RxJS Interval 无延迟
RxJS Interval without delay
以下代码在 5000ms
之后发出一个 int
,然后在每个 5000ms
之后发出另一个:
let evens = Observable.interval(5000)
.map(i => {
return i * 2;
});
evens.subscribe((i) => {
console.log(i);
});
是否可以这样做,但立即获得第一个结果 (0ms
),然后在后续结果之间等待 5000m
秒?
您可以使用 timer()
,其中第一个参数是初始延迟:
timer(0, 5000);
或者,如果您希望立即发出第一个项目,您也可以使用 startWith()
运算符。
2019 年 1 月:针对 RxJS 6 更新
以下代码在 5000ms
之后发出一个 int
,然后在每个 5000ms
之后发出另一个:
let evens = Observable.interval(5000)
.map(i => {
return i * 2;
});
evens.subscribe((i) => {
console.log(i);
});
是否可以这样做,但立即获得第一个结果 (0ms
),然后在后续结果之间等待 5000m
秒?
您可以使用 timer()
,其中第一个参数是初始延迟:
timer(0, 5000);
或者,如果您希望立即发出第一个项目,您也可以使用 startWith()
运算符。
2019 年 1 月:针对 RxJS 6 更新