检查用户是否已登录Firebase的最快选项?

时间:2019-07-03 14:56:43

标签: firebase google-cloud-firestore firebase-authentication

我目前正在检查用户是否使用以下方式登录到客户端:

firebase.auth().onAuthStateChanged(function (user)
{
}

但是,此方法在页面加载后需要1-2秒,我想知道是否有更快的方法来检查用户是否已登录?

我正在使用它来检查用户是否有权进入网站上的特定页面,目前他们能够在重定向到首页之前查看其内容,这是不应该发生的。所以我希望有一个更快的选择。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用此方法在用户登录后立即执行某些代码(避免通过执行快速循环来持续等待用户数据的测试):

var int = setInterval(()=>{
 firebase.auth().currentUser ?
 // you can do whatever you want immediately when the user is logged
 // and then clear the interval;
 clearInterval(int) 
 : '' 
  }
},10)