Opérateurs de combinaison (Pipeable Operators)
Les opérateurs de combinaison RxJS sont des outils puissants pour combiner plusieurs Observables et créer de nouveaux flux.
IMPORTANT
Cette page traite des Pipeable Operators (format utilisé dans les pipelines).
Pour les Creation Functions (format créant de nouveaux Observables à partir de plusieurs), voir Chapitre 3 Creation Functions.
Creation Functions vs Pipeable Operators
Les fonctionnalités liées à la combinaison sont fournies sous deux formes.
Creation Functions (expliquées au Chapitre 3)
Reçoivent plusieurs Observables en arguments et créent un nouvel Observable.
import { concat, merge, combineLatest, zip, race, forkJoin } from 'rxjs';
// Utilisation comme Creation Function
const combined$ = concat(obs1$, obs2$, obs3$);
const merged$ = merge(source1$, source2$);Voir Creation Functions pour plus de détails.
Pipeable Operators (expliqués sur cette page)
Utilisés dans .pipe() sur un Observable existant.
import { concatWith, mergeWith, combineLatestWith } from 'rxjs';
// Utilisation comme Pipeable Operator
const result$ = source$.pipe(
map(x => x * 2),
concatWith(other$),
filter(x => x > 10)
);Liste des Pipeable Operators
◾ Opérateurs traités sur cette page
| Opérateur | Description |
|---|---|
| withLatestFrom | Combine avec les dernières valeurs des autres flux lors de l'émission du flux principal |
| mergeAll | Aplatit les Higher-order Observables en parallèle |
| concatAll | Aplatit les Higher-order Observables séquentiellement |
| switchAll | Bascule vers le dernier Higher-order Observable |
| exhaustAll | Ignore les nouveaux Higher-order Observables pendant l'exécution |
| combineLatestAll | Combine les dernières valeurs de tous les Observables internes |
| zipAll | Apparie les valeurs correspondantes de chaque Observable interne |
◾ Fournis principalement comme Creation Functions
Les suivants sont principalement utilisés comme Creation Functions (voir Chapitre 3).
| Fonction | Description | Version Pipeable |
|---|---|---|
| concat | Combinaison séquentielle | concatWith (RxJS 7+) |
| merge | Combinaison parallèle | mergeWith (RxJS 7+) |
| combineLatest | Combine les dernières valeurs | combineLatestWith (RxJS 7+) |
| zip | Apparie les valeurs correspondantes | zipWith (RxJS 7+) |
| race | Adopte le flux le plus rapide | raceWith (RxJS 7+) |
| forkJoin | Attend la complétion de tous | (Pas de version Pipeable) |
Pour aller plus loin
Pour des exemples de scénarios réels utilisant les opérateurs de combinaison, voir Cas d'utilisation pratiques pour plus de détails.