Pre*_*70R 18 rxjs ngrx angular
我想合并来自多个observable的最新发射值,所以现在我正在使用.withLatestFrom.除此之外,它将数据嵌套在嵌套数组中,而不是将数据推送到新的数组值.示例代码如下.
任何想法如何使用.withLatestFrom检索多个可观察的发射?
.withLatestFrom(source1)
.withLatestFrom(source2)
.withLatestFrom(source3)
.map((data) => { console.log(data) });
Run Code Online (Sandbox Code Playgroud)
adh*_*ris 41
withLatestFrom
支持多个可观察量:
.withLatestFrom(source1, source2, source3)
.map((data) => { console.log(data) });
-> [val, value1, value2, value3]
Run Code Online (Sandbox Code Playgroud)
它还支持函数作为它的最后一个参数,因此您可以获得除数组之外的值:
observable$
.withLatestFrom(source1, source2, (val, one, two) => {
return {val: val, one: one, two: two};
});
Run Code Online (Sandbox Code Playgroud)
withLatestFrom 接受多个 observable。所以你可以这样写:
let obs1$ = Rx.Observable.of('a');
let obs2$ = Rx.Observable.of('b');
Rx.Observable.interval(1000)
.withLatestFrom(obs1$, obs2$)
.subscribe(x=>console.log(x))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8432 次 |
最近记录: |