我希望有一个可观察量取决于另一个可观察量的值。这很简单,我找不到办法做到这一点
user$: Observable<firebase.User>;
playlists$: FirebaseListObservable<any>;
constructor(db: AngularFireDatabase,
private afAuth: AngularFireAuth) {
this.user$ = afAuth.authState;
// error
this.playlists$ = this.user$.flatMap(user => db.list(`/playlists/${user.uid}`));
}
我得到的错误是:'Observable'不能分配给'FirebaseListObservable'类型。 “Observable”类型中缺少属性“$ ref”。
答案 0 :(得分:0)
注释playlists$: FirebaseListObservable<any>;
应为playlists$: Observable<any>;
。
这是flatMap
返回的内容。如果要将flatMap
的结果存储在变量中,那么应该的类型注释。