filter - Angular2 可观察过滤器

标签 filter angular observable rxjs5

我想过滤可观察的结果,但得到了意想不到的结果。

我正在使用以下导入语句:

import {Observable} from 'rxjs/Observable';
import 'rxjs/add/observable/of';

此示例不返回任何内容:

Observable.of([0, 1, 2, 3, 4, 5])
.filter((x: any) => x % 2 === 0)
.subscribe(data => console.log(data));

此示例返回整个结果集 [0,1,2,3,4,5]:

Observable.of([0, 1, 2, 3, 4, 5])
.filter((x: number[], idx) => x[idx] % 2 === 0)
.subscribe(data => console.log(data));

有人看到语法错误和/或我遗漏的东西吗?谢谢!

最佳答案

如果您想将值作为可迭代传递(当前情况下为数组),则需要使用 from

import 'rxjs/add/observable/from';

Observable.from([0, 1, 2, 3, 4, 5])
.filter((x: any) => x % 2 === 0)
.subscribe(data => console.log(data));

或者,如果您想坚持使用 of 传递值作为参数

Observable.of(0, 1, 2, 3, 4, 5)
.filter((x: any) => x % 2 === 0)
.subscribe(data => console.log(data));

关于filter - Angular2 可观察过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38404074/

相关文章:

javascript - 如何在 Angular 4 中删除数据后刷新 mfData

unit-testing - 带有可观察对象的单元测试模拟服务 => 订阅不是函数

filter - 在 Jetty 中设置 GzipFilter 时出现问题

arrays - Elasticsearch-数组过滤器中的值

mysql 找到以下案例的客户

http - curl get to angular 2 http get 请求

angularjs - Angular 2 RC 5 - 无法绑定(bind)到 '...',因为它不是 '...' 的已知属性

javascript - 可观察的http服务

properties - Observable 属性允许在运行时添加观察者

javascript - 如何根据对象过滤 GeoJson 中的对象?