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
- Utilizzare angular-cli per creare una direttiva in #angular2 https://aspit.co/bft di @sm15455
- le impostazioni sono su #windowslive, quindi basta il liveid per avere tutte le ... http://aspitalia.com/build-win8 #BldWin
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- la nostra app per #win8 è nello store che vi aspetta da qualche mese: provatela! contenuti, forum e push! https://aspit.co/pd