2016-09-17 11 views
0

firebaseでサインアップを送信するコントローラ関数を作成しようとしていますが、プロビジョニング内で更新されたときにスコープ(controllerAs: $reg)の変数がバインドされていないようです。firebase約束の変更時にスコープ変数がバインドされない

$reg.loadingに変更された場合、それが正しく、テンプレートに更新されますが、に変更されたときに、スコープ変数は、コントローラに更新されますが、テンプレートは、それを無視します。

$reg.submit =() => { 
    $reg.loading = true; 

    firebase.auth().createUserWithEmailAndPassword($reg.user.email, $reg.user.password) 
    .catch(error => { 
     $reg.loading = false; 
    }); 
}; 

テンプレートはちょうど(両方 & をNGクリックngの提出でテスト)がクリックされた私は、送信ボタンを$reg.submit()関数を呼び出す形です。

答えて

1

最後にエラーが見つかりました。私はアンギュラ使用していますについて認識していないfirebase共通オブジェクトを、使用していた

、私が使用する必要があることはAngularFireライブラリから(コントローラに注入された)オブジェクト$firebaseAuthです。

私は$角度でループをダイジェスト自体をやって心配約束を持ってこの方法:

$reg.submit =() => { 
    $reg.loading = true; 

    $firebaseAuth.$createUserWithEmailAndPassword($reg.user.email, $reg.user.password) 
    .catch(error => { 
     $reg.loading = false; 
    }); 
}; 
1

使用$スコープ。$(適用)

$scope.$apply(function() { 
    $reg.loading = false; 
}); 
0

rootScopeにスコープを変更してみてください。

+0

これは、質問への答えを提供していません。十分な[評判](http://stackoverflow.com/help/whats-reputation)があれば、[任意の投稿にコメントする]ことができます(http://stackoverflow.com/help/privileges/comment)。代わりに、[質問者からの説明を必要としない回答を提供する](http://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- i-do-代わりに)。 - [レビューから](/レビュー/低品質の投稿/ 13705030) – cartant

+0

私はここで尋ねられたことに答えようとしました。私はそうでなければ評判を持っていない。そして、何か新しいものを落胆させてはいけません。 @cartant –

関連する問題