如何为 Observable.interval() 添加延迟?

How to add a delay to an 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;
});