如何在Angularfire2 Angular2中对FirebaseListObservable列表进
发布时间:2020-12-17 17:06:09 所属栏目:安全 来源:网络整理
导读:我希望从Firebase实时数据库中获取所有用户,并按分数属性对其进行排序.我已经使用变量工作了 用户:FirebaseListObservable any []gt ;; 但是我得到了错误: Type 'Observableany[]' is not assignable to type 'FirebaseListObservableany[]'.Property '_re
我希望从Firebase实时数据库中获取所有用户,并按分数属性对其进行排序.我已经使用变量工作了
用户:FirebaseListObservable< any []> ;; 但是我得到了错误: Type 'Observable<any[]>' is not assignable to type 'FirebaseListObservable<any[]>'. Property '_ref' is missing in type 'Observable<any[]>'. 如果我将变量更改为 我的提取和排序代码(有效)看起来像: this.users = this.af.database.list('/users') .map(items => items.sort((a,b) => b.score - a.score)); 我将不胜感激任何有关如何避免错误或任何首选方式的建议,谢谢! 解决方法
FirebaseListObservable实现
lift ,因此RxJS运算符(如map)将返回FirebaseListObservable实例.
就是这样 – 当使用TypeScript时 – RxJS运算符被静态类型化以返回Observable,因此您必须强制转换为FirebaseListObservable. (使用RxJS不必涉及TypeScript,如果你看the guidance for adding operators,你会看到没有提到类型.) 您可以通过查找问题中提到的推送和更新功能来验证是否返回了FirebaseListObservable实例: this.users = this.af.database .list('/users') .map(items => items.sort((a,b) => b.score - a.score)) as FirebaseListObservable<any[]>; console.log(this.users.push.toString()); console.log(this.users.update.toString()); 但请注意,这对于作为查询创建的FirebaseListObservable实例不起作用.关于这种情况有一个as-yet-unanswered question. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读