RxJS - 过滤运算符 throttle

此运算符将输出并忽略源可观察值,该值由作为参数的输入函数确定的时间段内的值,并重复相同的过程。

语法

throttle(durationSelector: Observable 或 Promise): Observable

参数

durationSelector −参数 durationSelector 是一个 Observable 或 Promise,它将忽略源 Observable 发出的值。

返回值

它将返回一个可观察对象,该可观察对象将限制源 Observable 发出的值。

示例

import { fromEvent, interval } from 'rxjs';

import { throttle} from 'rxjs/operators';

let btn = document.getElementById("btnclick");
let btn_clicks = fromEvent(btn, 'click');
let case1 = btn_clicks.pipe(throttle(ev => interval(2000)));
case1.subscribe(x => console.log(x));

当您单击按钮时,将发出第一次单击事件,后续单击将延迟给定 throttle() 运算符的时间。

输出

throttle Operator