我在我的网络应用上使用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
,但没有这样的方法。我该如何解决这个问题?
答案 0 :(得分:0)
确保您不会多次调用initialize方法。请参阅:github.com/Polymer/polycasts/issues/16了解更多详情。