【发布时间】:2022-01-02 17:48:39
【问题描述】:
我正在尝试在我的 Angular 应用中退出当前登录的用户。这是我的客户服务:
export class AuthClientService {
public register(email: string, password: string): Observable<Object> {
return from(
createUserWithEmailAndPassword(this.firebaseService.auth, email, password)
);
}
public logIn(email: string, password: string): Observable<Object> {
return from(
signInWithEmailAndPassword(this.firebaseService.auth, email, password)
);
}
public logOut(): Observable<void> {
return from(signOut(this.firebaseService.auth));
}
constructor(private firebaseService: FirebaseService) {}
}
和 firebase 服务:
@Injectable({
providedIn: 'root',
})
export class FirebaseService {
public app = initializeApp(firebaseConfig);
public auth = getAuth();
}
但是当我调用 logOut 函数时会出现这个错误:
ERROR 错误:未捕获(承诺中):TypeError:无法分配给 对象“[object Object]”的只读属性“currentUser” TypeError:无法分配给对象“[object Object]”的只读属性“currentUser” 在 index-8593558d.js:2473 在 Generator.next () 在 asyncGeneratorStep (asyncToGenerator.js:3) 在 _next (asyncToGenerator.js:25) 在 asyncToGenerator.js:32 在新的 ZoneAwarePromise (zone.js:1387) 在 asyncToGenerator.js:21 在 AuthImpl.directlySetCurrentUser (index-8593558d.js:2466) 在 index-8593558d.js:2329 在 Generator.next () 在 resolvePromise (zone.js:1213) 在 zone.js:1120 在 zone.js:1136 在 ZoneDelegate.invoke (zone.js:372) 在 Object.onInvoke (core.js:28692) 在 ZoneDelegate.invoke (zone.js:371) 在 Zone.run (zone.js:134) 在 zone.js:1276 在 ZoneDelegate.invokeTask (zone.js:406) 在 Object.onInvokeTask (core.js:28679)
app 正在从ngrx 效果调用它,但我认为这不是问题,因为我尝试在没有ngrx 的情况下调用它,但仍然出现此错误。
【问题讨论】:
标签: javascript angular firebase-authentication