下面是从一个REST服务获取数据的一个片段:不能过滤RxJS可观察到的Angular2
getPlayers(position: string) {
return this.get(`players/${position}`)
.map(r => r.data)
.catch(error => {
console.log('Error: ', error);
return Observable.of<Player>();
});
}
r.data是玩家的数组。
这是我的定义将保持参考一下以上的回报服务的变量:
players: Observable<Player>;
最后,这是我如何分配球员:
this.players = this.svc.getPlayers(this.position);
这是怎么了我列出组件上的玩家:
<ion-item *ngFor="let player of players | async">
{{player.name}}-{{player.position}}
</ion-item>
一切按预期工作。现在,我想在向组件展示它们之前过滤这些播放器,然后尝试类似这样的操作;
this.players = this.svc.getPlayers(this.position).filter(p => p.position === 'hq');
......我在屏幕上什么都看不到,就好像我没有任何记录显示。没有一种可观察的方法似乎能够正确工作。
任何想法为什么?
能否请您确认,如果过滤的数据有数组中的任何元素? – WelsonJR