RxJS - 等到 5 个事件发生后再继续
RxJS - Wait until 5 events to occur before continuing
我有一个简单的 RxJS5 observable,如下所示:
function foo(){
return Rx.Observable.create(obs => {
obs.next();
});
}
observable 是这样创建的:
const x = foo();
function bar(){
return someObs()
.flatMap(() => x.wait(5)) // wait for x to fire 5 times
.map(v => ({z:v}));
}
我想做的是等待 x observable 中的 5 个事件触发,然后再继续。
我认为 take
运算符不是我想要的,所以我只是将运算符称为“wait
”
我如何使用 RxJS5 做到这一点?
好的,看来我可以做到:
return this.obsEnqueue.take(5).takeLast(1);
因为我最终只想触发 1 个事件,
等待 5 个事件后
如果有更好的方法,一定想听听
您要找的运营商是skip
return someObs()
.skip(5)
.map(v => ({z:v}));
我有一个简单的 RxJS5 observable,如下所示:
function foo(){
return Rx.Observable.create(obs => {
obs.next();
});
}
observable 是这样创建的:
const x = foo();
function bar(){
return someObs()
.flatMap(() => x.wait(5)) // wait for x to fire 5 times
.map(v => ({z:v}));
}
我想做的是等待 x observable 中的 5 个事件触发,然后再继续。
我认为 take
运算符不是我想要的,所以我只是将运算符称为“wait
”
我如何使用 RxJS5 做到这一点?
好的,看来我可以做到:
return this.obsEnqueue.take(5).takeLast(1);
因为我最终只想触发 1 个事件, 等待 5 个事件后
如果有更好的方法,一定想听听
您要找的运营商是skip
return someObs()
.skip(5)
.map(v => ({z:v}));