如何向 Observable.interval() 添加延迟



现在我正在使用一个我不太关心的setTimeout()。有本地运算符吗?我试过delay但没有用?

import { Component, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs/Observable';
export class CarouselListComponent implements OnInit {
  public active = 0;
  @Input() public delay = 0;
  @Input() public interval = 5500;
  public ngOnInit(): void {
    setTimeout(()=> {
      Observable.interval(this.interval).subscribe(()=> {
        ++this.active;
      });
    }, this.delay);
  }
}

如果你想要一个初始延迟,你可以使用一个timer - 它可以传递一个初始延迟和一个周期:

Observable.timer(this.delay, this.interval).subscribe(() => {
  ++this.active;
});

最新更新