【发布时间】:2017-06-22 01:18:48
【问题描述】:
在离子项目中,我有:
import { AngularFireDatabase, FirebaseListObservable} from 'angularfire2/database';
还有一个类:
songs: FirebaseListObservable<any>;
因此,代码行:
this.songs = db.list('/songs');
工作,并允许我把线:
<button ion-button ouline *ngFor="let song of songs | async">
在我的 html 中没有问题。
现在,FirebaseListObservable 扩展了 RxJS Observable (source)。
此外,Observable 有一个方法toArray()。但是,当我运行我的项目时,我看到:
Typescript Error
Property 'toArray' does not exist on type 'FirebaseListObservable<any>'.
这是为什么?还有其他方法可以让我从songs 观察的内容中获取一个数组吗?
【问题讨论】:
-
AngularFire2 不会完全导入 RxJS,也不会使用修补
Observable原型的导入。您需要自己导入toArray原型补丁。请参阅docs。 -
我在代码中添加了
import 'rxjs/add/operator/toArray;'这一行,但随后看到了这个错误:Type "Observable<any[]>" is not assignable to type "any[]". Property "length" is missing in type "Observable<any[]>".。
标签: firebase rxjs observable angularfire2