Nello script precedente abbiamo visto come in RxJS esistano operatori diversi per svolgere una stessa azione sulla base del contesto in cui ci si trova. Abbiamo visto come usare gli operatori più comuni come switchMap, mergeMap e concatMap. In questo script ci occuperemo invece di un altro operatore di uso meno comune, ma utile a seconda dei casi: exhaustMap.
Questo operatore permette la concatenazione di più observable, ma, a differenza di switchMap, ogni nuova emissione dell'observable principale verrà ignorata finchè il flusso derivante dall'emissione precedente non si concluderà. Per chiarire meglio
facciamo un esempio.
clicks.pipe( exhaustMap(ev => interval(1000).pipe(take(5))) );
In questo caso se l'emissione di click avviene a meno di 5 secondi dalla precedente, il click non verrà considerato.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
- ASP.NET 3.5 per tutti
- .NET Conference Italia 2023 - Milano e Online
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare Docker Compose con Azure App Service
- Creare più ambienti in un'applicazione Angular