Appearance
Comment utiliser delayWhen en RxJS ?
delayWhen
est une opération de temps différé asynchrone dans RxJS qui prend un observateur et retourne un nouvel observateur qui diffère la diffusion des valeurs de l'observateur d'origine jusqu'à ce que la fonction de retard renvoyée par l'observateur donné émette une valeur.
Voici comment utiliser delayWhen
dans RxJS :
js
import { of, delayWhen } from 'rxjs';
// Observable d'origine qui émet la valeur 1
const source = of(1);
// Observable de retard qui émet la valeur 0 après 1 seconde
const delay = val => {
return new Promise(resolve => {
setTimeout(() => {
resolve(0);
}, 1000);
});
};
// Utilisation de delayWhen pour différer la diffusion de la valeur de l'observable d'origine
// jusqu'à ce que l'observable de retard émette une valeur
const example = source.pipe(delayWhen(delay));
// Souscription à l'observable résultant
example.subscribe(val => {
console.log(val);
});
Dans cet exemple, l'observable d'origine émet la valeur 1. L'opération delayWhen
utilise l'observable de retard pour différer la diffusion de cette valeur jusqu'à ce que l'observable de retard émette la valeur 0, ce qui se produit après 1 seconde.