2017-09-12 39 views
1

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で試したかったが、そのような方法はありませんでした。どうすればこの問題を解決できますか?

+1

initializeメソッドを複数回呼び出さないようにしてください。 https://github.com/Polymer/polycasts/issues/16 –

+0

を参照してください。私は解決しました。はい問題はそれであり、私は既に関数を初期化した関数に到達する方法を知らなかった。私は今見つけた。 firebase.auth()。applyActionCode; –

+0

偉大な、答えとしてのコメントを追加 –

答えて

0

initializeメソッドを複数回呼び出さないようにしてください。詳細は、github.com/Polymer/polycasts/issues/16を参照してください。

関連する問題