无法读取属性 $onAuth' 的棱角火



我正在尝试让我的应用程序使用firebase auth。。在这个阶段,我的登录控制器成功了,但它登录了,下一秒就注销了。

.controller('LoginCtrl', function ($scope, $location, userAuth) {
     if ($scope.authData) {
        console.log("User " + authData.uid + " is logged in with " + authData.provider);
      } else {
        console.log("User is logged out");
      }
     $scope.login = function() {
      $scope.authData = null;
      $scope.error = null;
      userAuth.$signInWithEmailAndPassword($scope.loginemail, $scope.loginpassword)
      .then(function(authData) {
        $scope.authData = authData;
         console.log(authData);
         $location.path('/home');
         $scope.$apply(); 
      }).catch(function(error) {
        $scope.error = error.message;
      });
    };
  });

我有一个服务,在那里我可以得到我的火球对象:

.service('userAuth', ["$firebaseAuth", function($firebaseAuth) {
    return $firebaseAuth();
  }

什么是身份验证状态的更好方法,这样我就可以在整个网站上使用它?

我尝试使用$onAuth,但我得到了这个错误

TypeError: Cannot read property '$onAuth' of undefined

我假设您使用的是新的Firebase(3.x.x(和新的AngularFire(2.x.x(。

在这种情况下,您应该使用$onAuthStateChanged 而不是$onAuth

请参阅迁移指南

相关内容

  • 没有找到相关文章

最新更新