我努力创建一个 Observable,它会在我每次点击时发出,或者,如果我不点击,则每秒发出,并且每次我点击时都会重置其计时器。
我几乎通过简单的合并实现了我想要的,但我不知道每次单击时如何重置计时器。
import { fromEvent, merge, timer } from "rxjs";
import { debounceTime, map } from "rxjs/operators";
const click$ = fromEvent(document, "click");
merge(click$, timer(0, 1000))
.pipe()
.subscribe(console.
最佳答案
听起来您正在寻找 switchMap
和 startWith
。
click$.pipe(
startWith(null),
switchMap(() => timer(0, 1000))
).subscribe(console.log);
关于javascript - RxJS - 点击和计时器之间的竞赛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58929830/