RxJS - Atraso do operador de serviços públicos quando

Este operador atrasa os valores emitidos da fonte Observável com base no tempo limite de outro observável tomado como entrada.

Sintaxe

delayWhen(timeoutSelector_func: Observable
      
       ): Observable 
      

Parâmetros

timeoutSelector_func - é um observável que decide sobre o tempo limite.

Valor de retorno

Um observável será retornado que usará a saída timeoutSelector_func para atrasar o observável de origem.

Exemplo

import { fromEvent, timer } from 'rxjs';
import { delayWhen } from 'rxjs/operators';

let btn = document.getElementById("btnclick");
let btn_clicks = fromEvent(btn, 'click');
let case1 = btn_clicks.pipe(delayWhen(() => timer(1000)),);
case1.subscribe(x => console.log(x));

Usamos um observável para delayWhen () e, quando esse observável emite, o evento click é emitido.

Resultado