【问题标题】:Getting Firebase Current User Info获取 Firebase 当前用户信息
【发布时间】:2017-04-06 07:05:52
【问题描述】:

如何在不使用 onStateChanged 之类的侦听器的情况下在我的应用程序中获取当前用户的信息?现在我正在使用:

auth.createUserWithEmailAndPassword(email,password).then(function(user){ }

获取用户信息然后将其分配给一个变量.. 但是当我刷新页面时,该变量会丢失其分配的值

【问题讨论】:

    标签: javascript angularjs firebase firebase-authentication


    【解决方案1】:

    根据docs 使用currentUser 应该可以解决问题:

    var user = firebase.auth().currentUser;
    
    if (user) {
      // User is signed in.
    } else {
      // No user is signed in.
    }
    

    【讨论】:

    • 是的,但它需要一个监听器......而且那个监听器会弄乱我代码的其他部分
    【解决方案2】:

    使用$firebaseAuth服务进行同步调用

    $firebaseAuth().$getAuth();
    

    如果没有用户登录,它将返回当前登录的用户或null

    【讨论】:

    • 很高兴听到它对你有用,请接受它作为答案,以便其他人获得帮助
    • 我有一点问题,当我刷新页面时它返回一个空值,即使我还没有退出。嗯
    • 这是因为刷新后,您保存数据的 $scope 变量会变空。所以你应该在刷新页面后再次调用 $getAuth()。如果你使用 Angular 路由应该没有问题,因为你的整个控制器代码(包括你的 $getAuth 行)将重新运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-15
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    相关资源
    最近更新 更多