RxJS - Antirrebote del operador de filtrado

Un valor emitido desde la fuente Observable después de un tiempo y la emisión está determinada por otra entrada dada como Observable o prometida.

Sintaxis

debounce(durationSelector: Observable or promise): Observable

Parámetros

durationSelector- Toma un argumento llamado durationSelector que devuelve un observable o una promesa. Este argumento obtendrá la entrada de la fuente observable y decidirá el tiempo de espera para cada valor de fuente.

Valor devuelto

Devuelve un observable en el que la emisión de la fuente observable se retrasa según el durationSelector.

Ejemplo

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

Aquí el evento de clic se retrasa usando el operador debounce ()

Salida