如何将 Observable 转换为 FirebaseObjectObservable

How to cast Observable to FirebaseObjectObservable

代码:

(转换在这两种方法中都不起作用)

1. this.af.database.object('/users/'+key)
          .do((something:any)=>console.log(something)) as FirebaseObjectObservable<any>;
2. ..switchMap(()=>this.af.database.object('/users/'+key)) as FirebaseObjectObservable<any>;

问题:

  1. 有什么问题?
  2. 我可以在所有地方用 'User' 类型替换 'any' 而不会丢失任何数据吗?

好的解决了:

1. <FirebaseObjectObservable<any>>this.af.database.object('/users/'+key)
          .do((something:any)=>console.log(something));
2. <FirebaseObjectObservable<any>>..switchMap(()=>this.af.database.object('/users/'+key));

为了替换 any,我在我的用户 class 中添加了一个 $key 属性 所以现在我可以:

1. <FirebaseObjectObservable<User>>this.af.database.object('/users/'+key)
          .do((something:any)=>console.log(something));
2. <FirebaseObjectObservable<User>>..switchMap(()=>this.af.database.object('/users/'+key));