RxJS - Filtering Operator debounce



A value emitted from the source Observable after a while and the emission is determined by another input given as Observable or promise.

Syntax

debounce(durationSelector: Observable or promise): Observable

Parameters

durationSelector − It takes in an argument called durationSelector that returns an observable or a promise. This argument will get input from the source observable and decide the timeout for each source value.

Return value

It returns an observable wherein the emission of the source observable is delayed based on the durationSelector.

Example

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));

Here the click event is delayed using debounce() operator

Output

debounce Operator
Advertisements