WebアプリケーションでfirebaseとAngularjsを使用します。私はすべての私のアプリモジュールに提供する以下の工場を持っている:Firebase - Angularjsが電子メールの確認を処理します
.factory('Auth', ["$firebaseAuth",
function($firebaseAuth) {
return $firebaseAuth();
}
]);
認証が必要かどうかは、ページをチェックして(実際にはそれは私が知っている最も簡単かつ唯一の方法です)私にとって非常に重要です。私はfirebase電子メールの検証を使用したいとdocumentsによると、私はそうする必要がある
resolve: {
"currentAuth": ["Auth", function(Auth) {
return Auth.$requireSignIn();
}]
:
var app = firebase.initializeApp(config);
var auth = app.auth();
...
function handleVerifyEmail(auth, actionCode, continueUrl) {
auth.applyActionCode(actionCode).then(function(resp) {
...
}).catch(function(error) {
...
});
}
をしかし、それはエラーを返しますので、私は$ stateProvider内の各モジュールの設定にこのコードを置きます:
{code: "app/duplicate-app", message: "Firebase: Firebase App named '[DEFAULT]' already exists (app/duplicate-app).",
私は工場Auth.applyActionCode
で試したかったが、そのような方法はありませんでした。どうすればこの問題を解決できますか?
initializeメソッドを複数回呼び出さないようにしてください。 https://github.com/Polymer/polycasts/issues/16 –
を参照してください。私は解決しました。はい問題はそれであり、私は既に関数を初期化した関数に到達する方法を知らなかった。私は今見つけた。 firebase.auth()。applyActionCode; –
偉大な、答えとしてのコメントを追加 –