Firebase - Angularjs处理电子邮件验证

时间:2017-09-12 16:14:56

标签: angularjs firebase firebase-authentication

我在我的网络应用上使用firebase和Angularjs。我在下面有一个工厂服务于我的所有应用模块:

.factory('Auth', ["$firebaseAuth",
    function($firebaseAuth) {
       return $firebaseAuth();
   }
]);

如果需要auth,检查页面对我来说(实际上这是我知道的最简单也是唯一的方法)至关重要。所以我把这个代码放在$ stateProvider的每个模块配置中:

resolve: {
    "currentAuth": ["Auth", function(Auth) {
        return Auth.$requireSignIn();
    }]

我想使用firebase电子邮件验证,根据documents,我需要这样做:

var app = firebase.initializeApp(config);
var auth = app.auth();
...
function handleVerifyEmail(auth, actionCode, continueUrl) {
  auth.applyActionCode(actionCode).then(function(resp) {
   ...
  }).catch(function(error) {
   ...
  });
}

然后它返回错误:

  

{code:“app / duplicate-app”,消息:“Firebase:Firebase应用程序命名   '[DEFAULT]'已经存在(app / duplicate-app)。“,

我想尝试使用工厂Auth.applyActionCode,但没有这样的方法。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

确保您不会多次调用initialize方法。请参阅:github.com/Polymer/polycasts/issues/16了解更多详情。