免责声明:我有一个简单的解决方案,想在这里记录它。
我一直在看RXJ
documentation for map methods
符合这个要求-我们称之为
mapArray
-但没能找到。
of([1, 2, 3]).pipe(
mapArray(num => num + num)
).subscribe(value => console.error(value));
我想要一个能转换一个或多个数组的可观测值的运算符(
Obserable<T[][]>
)并对每个数组的每个单独元素执行映射操作。
对于我来说,常见的用例是,我从服务器中检索一个元素列表,并希望将每个JSON表示转换为相应的类型脚本类。这是一个可以观察到的单个项目(只有一个数组),但我会对一般情况(1个或多个数组)感兴趣。
let people$: Observable<Person> = of([{id: 1, name: 'joe', timestamp: '2019-10-11'}, {...}, ...]).pipe(
mapArray(Person.fromJson)
);
我已经遇到了这个问题,足以让一个定制的操作员来处理它。有人知道本地RXJS操作员吗?