我试图实现以下行为:我有一个每秒都会发出的可观察源。如果另一个 observable( ) 发出值,我试图在一段时间内(10 秒)忽略值mySubject。这就是我来的目的:
this.source.pipe(
takeUntil(this.mySubject),
repeatWhen((observable) => observable.pipe(delay(10000))),
tap((x) => console.log(x)),
).subscribe();Run Code Online (Sandbox Code Playgroud)
现在,每次发射都会停止源发射 10 秒mySubject。
问题是,如果再次发射来mySubject重置 10 秒的“计数”并忽略另外 10 秒而不同时发射任何内容,我需要它。
我怎样才能实现这个目标?