0

Angular2を使用してfirebaseとfacebook認証でいくつかの問題を発見しました。私はユーザーがログインしているかどうかを確認するためにこの方法を作成しましたが、コンソールが正しい値を報告していないため、これを行う正しい方法ではないと思います。だからここAngular2のFacebookとFirebase認証

は私のコードです:

export class AppComponent { 
    user: Observable<firebase.User>; 

    constructor(private afAuth: AngularFireAuth, private db: AngularFireDatabase) { 
    } 

    ngOnInit() { 
    this.user = this.afAuth.authState; 
    if (this.user) 
     console.log('NOT LOGGED'); 
    else 
     console.log('LOGGED IN', this.afAuth.authState); 
    } 

    login() { 
    this.afAuth.auth.signInWithPopup(new firebase.auth.FacebookAuthProvider()) 
     .then((res) => console.log(res)); 
    } 

    logout() { 
    this.afAuth.auth.signOut(); 
    } 
} 

は、どうすればより良い方法でユーザーに観察を使用することができますか? authState以来

答えて

2

は、あなたが値を取得するためにサブスクライブする必要があり、観察を返します。

ngOnInit() { 
    this.afAuth.authState.subscribe(auth => { 
    if (auth) { 
     console.log('LOGGED IN', auth); 
    } else { 
     console.log('NOT LOGGED'); 
    } 
} 
関連する問題