首页 > 解决方案 > 找不到 FirebaseUI 小部件错误

问题描述

我正在尝试使用 firebaseui auth 为单页 Web 应用程序制作登录屏幕。我复制了 firebaseui 的示例代码来创建登录屏幕:

<script src="/__/firebase/init.js"></script>
<script src="https://cdn.firebase.com/libs/firebaseui/3.0.0/firebaseui.js"></script>
<link type="text/css" rel="stylesheet" href="https://cdn.firebase.com/libs/firebaseui/3.0.0/firebaseui.css" />
  <script type="text/javascript">
  // FirebaseUI config.
  var uiConfig = {
    signInOptions: [
      // Leave the lines as is for the providers you want to offer your users.
      firebase.auth.GoogleAuthProvider.PROVIDER_ID,
      firebase.auth.EmailAuthProvider.PROVIDER_ID
    ]
  };

  // Initialize the FirebaseUI Widget using Firebase.
  var ui = new firebaseui.auth.AuthUI(firebase.auth());
  // The start method will wait until the DOM is loaded.
  ui.start('#firebaseui-auth-container', uiConfig);
</script>

然后我插入了一个

<div id="firebaseui-auth-container'></div>

加载登录屏幕。常规的 firebase 内容加载得很好,但身份验证屏幕却没有。这是我得到的错误:

Uncaught Error: Could not find the FirebaseUI widget element on the page.

我在网上的其他任何地方都找不到这个错误,我不确定它是什么意思或为什么会出现。我应该怎么做才能使身份验证屏幕加载?

标签: javascriptfirebaseauthenticationweb-applicationsfirebaseui

解决方案


从这里抛出错误:https ://github.com/firebase/firebaseui-web/blob/cac4047490ed90b0d3d741d6deb8b28905f5db4b/javascript/widgets/authui.js#L481

似乎找不到 html 元素。您可以尝试document.querySelector('#firebaseui-auth-container');从控制台调用以确认该页面上存在该元素吗?


推荐阅读