RxJS - Ritardo operatore utilityWhen

Questo operatore ritarda i valori emessi dalla sorgente Observable in base al timeout di un altro osservabile preso come input.

Sintassi

delayWhen(timeoutSelector_func: Observable
      
       ): Observable 
      

Parametri

timeoutSelector_func - è un osservabile che decide il timeout.

Valore di ritorno

Verrà restituito un osservabile che utilizzerà l'output timeoutSelector_func per ritardare l'osservabile di origine.

Esempio

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

Abbiamo usato un osservabile per delayWhen () e quando quell'osservabile emette viene emesso l'evento click.

Produzione