我正在使用angularfire2版本5,我收到以下错误:
输入'Observable< {} []>'不能分配给Observable类型<任何[]>。
这是我的代码:
exercisesList$: Observable <any[]>;
ionViewDidLoad() {
this.exercisesList$ = this.workoutProvider.getExercises();
}
getExercises()
getExercises(){
return this.db.list(`Exercises/${localStorage.getItem('workoutName')}`).valueChanges();
}
HTML 的
<ion-list>
<ion-item *ngFor="let exercise of exercisesList$ | async">{{exercise.name}}</ion-item>
</ion-list>
截图
任何人都可以解释valueChanges的类型是什么,以及如何解决这个问题。
感谢。
答案 0 :(得分:3)
目前有一个未解决的问题:
https://github.com/angular/angularfire2/issues/1299
你有两种解决方法:
根据转发提示,您只需将exercisesList$
类型更改为Observable <{}[]>
转换返回类型:
this.exercisesList$ = this.workoutProvider.getExercises() as Observable<any[]>
this.exercisesList$ = (Observable<any[]>) this.workoutProvider.getExercises()