通过每个索引上的特定属性是否为真来正确过滤对象数组的可观察对象?

时间:2017-12-07 00:21:53

标签: javascript typescript rxjs

所以我有一个类型为Student []的Observable。也就是说,可以观察到一系列对象。学生有一个属性id: number。如何根据属性筛选出学生数组的索引。例如,假设学生$是Observable [学生]类型的观察者,我想根据他们的“bannedId”从Observable<Student[]>中删除学生,我试过:

students$.filter(student => student.id !== bannedId)

然而我得到的错误是id不是Student []的属性。如果我提供索引,即student[0].id,它会识别该属性,但显然不会做我想要的。我该如何过滤这个?

1 个答案:

答案 0 :(得分:4)

您是否尝试过Observable.map(...)

students$.map(studentList => studentList.filter(student => student.id !== bannedId))

它会生成一个新的Observable,您可以在其中看到元素没有带有禁止ID的学生对象。