RxJS throttleTime
窗口开始时立即放行第一个值,窗口内后续值全部忽略。
throttleTime(300)时间线如何变化
- 1A 立即输出
A 打开第一个节流窗口。
- 2B 被忽略
窗口尚未关闭。
- 3C 也被忽略
throttleTime 不会重置当前窗口。
- 4D 打开新窗口
上一个窗口结束后,第一个新值立即输出。
- 5E 被忽略
最终只输出 A、D。
受支持的示例代码
实验室只根据下列示例中的关键操作符生成预设时间线,不执行任意输入代码。
import { fromEvent, throttleTime } from 'rxjs'
const clicks$ = fromEvent(button, 'click').pipe(
throttleTime(300)
)
clicks$.subscribe(save)