Um valor emitido da fonte Observável após um tempo e a emissão é determinada por outra entrada dada como Observável ou promessa.
Sintaxe
debounce(durationSelector: Observable or promise): Observable
Parâmetros
durationSelector- Leva em um argumento denominado durationSelector que retorna um observável ou uma promessa. Este argumento obterá entrada da fonte observável e decidirá o tempo limite para cada valor de fonte.
Valor de retorno
Ele retorna um observável em que a emissão da fonte observável é atrasada com base no seletor de duração.
Exemplo
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));
Aqui, o evento de clique é atrasado usando o operador debounce ()
Resultado