我正在使用Angular 2和angularfire库。我无法捕捉用户状态的变化。
首先)登录工作正常。我看到用户来到我的订阅功能,所有都是花花公子。
但是,当我在Firebase控制台上禁用该用户时...用户状态已更改。为什么我的应用程序组件中没有看到状态的变化?
我想捕获不同类型的错误,并根据错误代码处理它们。为此,我在这里创建了一个服务:
@Injectable()
export class CZAuthService {
constructor(private af: AngularFire){ }
getAuthState() : Observable<FirebaseAuthState>{
return this.af.auth.catch((error)=>{
console.log(error);
return this.af.auth;
})
}
}
我想在此catch运算符中捕获异常,然后返回流以维持与流的连接。
然后在我的根应用程序组件中,我订阅了此流并在用户登录时进行处理:
this.auth.getAuthState().subscribe((user)=>{
console.log(user);
if(user != null){
this._store.dispatch(new UserLogInSuccessAction(user))
}
});