使用 TestScheduler 手动提前计时

大多数 Rx 运算符采用可选的调度程序来调度其未来的迭代。如果未提供,则将使用其默认配置的调度程序。提供调度程序对于测试目的非常有用,在这些测试目的中,我们喜欢谈论虚拟时间而不是实时测试执行的速度。

const scheduler = new Rx.TestScheduler();
scheduler.stop();
Rx.Observable.interval(100, scheduler)
  .do(i => console.log(i))
  .subscribe();
scheduler.advanceBy(10 * 100);