6

我正在使用 FirebaseUI for Web — Auth 小部件来简化身份验证工作流程,但我遇到了一个问题。第一次一切正常。但是,在我登录后,小部件内容会清除,并且“使用...登录”按钮再也不会出现。尝试重新创建小部件时会出现错误“UI 小部件已在页面上初始化。每页只能初始化一个小部件实例。”

这意味着用户需要刷新页面才能恢复登录按钮。有没有更优雅的方式?

4

2 回答 2

3

您是否在单页应用程序中呈现小部件?如果是这样,这目前将无法正常工作。每当您希望用户登录时,您都必须在弹出窗口中呈现登录小部件。

于 2016-05-25T18:23:28.173 回答
2

正如 bojeil 在第一个答案(2016 年 5 月)中所说,在单页应用程序工作流程中使用它确实存在问题。但在最新版本的 firebase-ui 中,您实际上可以重置小部件,因此您无需再次初始化它。

您需要做的就是将小部件实例引用保存在变量中。然后,当你想再次渲染它时,你使用相同的引用,重置它然后重新启动它。

var ui;
if (ui) {
  ui.reset();
} else {
  ui = new firebaseui.auth.AuthUI(firebase.auth());
}
ui.start('#firebaseui-auth-container', uiConfig);
于 2018-01-27T19:11:54.143 回答