如何观察angularfireobject?

how to observe angularfireobject?

我无法使用 angularfireobject 从 Firebase 读取数据。

这是我的代码:

export class UserService {
    user: Observable<any>;
    constructor(private db: AngularFireDatabase) {
    }
    public getUser($userId: string){
        this.db.object('users/'+$userId).valueChanges();
    } 
}

并在 user.component.html

<h1>Welcome {{ (userService.user | async)?.name }}!</h1>

userService.user | json 给出空值。

感谢任何帮助。

你没有在我看到的任何地方设置你的 .user Observable 并且 .getUser() 永远不会被调用。

如果您打算显示有关当前用户的信息,您还必须进行身份验证:

export class UserService {
    user: Observable<any>;
    constructor(private db: AngularFireDatabase, private auth: AngularFireAuth) {
       this.user = auth.user.pipe(switchMap(user => 
         user ? db.object(`users/${user.uid}`).valueChanges() : of(null)
       ));
    }
}