RxJS - 過濾運算子 debounce
一段時間後從源可觀察序列發出的值,其發出由另一個以可觀察序列或 Promise 提供的輸入確定。
語法
debounce(durationSelector: Observable or promise): Observable
引數
durationSelector - 它接受一個稱為 durationSelector 的引數,該引數返回一個可觀察序列或一個 Promise。此引數將從源可觀察序列獲取輸入,並確定每個源值的超時。
返回值
它返回一個可觀察序列,其中源可觀察序列的發出基於 durationSelector 而延遲。
示例
import { fromEvent, interval } from 'rxjs';
import { debounce } from 'rxjs/operators';
let btn = document.getElementById("btnclick");
let btn_clicks = fromEvent(btn, 'click');
let case1 = btn_clicks.pipe(debounce(() => interval(2000)));
case1.subscribe(x => console.log(x));
此處,單擊事件使用 debounce() 運算子延遲
輸出
廣告