RxJS - Délai de l'opérateur utilitaire

Cet opérateur retarde les valeurs émises par la source Observable en fonction du timeout d'une autre observable prise en entrée.

Syntaxe

delayWhen(timeoutSelector_func: Observable
      
       ): Observable 
      

Paramètres

timeoutSelector_func - est un observable qui décide du délai.

Valeur de retour

Un observable sera retourné qui utilisera la sortie timeoutSelector_func pour retarder l'observable source.

Exemple

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

Nous avons utilisé une observable pour delayWhen (), et lorsque cette observable émet, l'événement click est émis.

Production