Skip to content

Operatori di Combinazione (Pipeable Operators)

Gli operatori di combinazione (Combination) di RxJS sono strumenti potenti per combinare più Observable e creare nuovi stream.

IMPORTANT

Questa pagina tratta i Pipeable Operators (formato utilizzato all'interno delle pipeline).

Per le Creation Functions (formato che crea nuovi Observable da più Observable), consultare il Capitolo 3 Creation Functions.

Creation Functions vs Pipeable Operators

Le funzionalità relative alla combinazione sono fornite in due formati.

Creation Functions (spiegate nel Capitolo 3)

Accettano più Observable come argomenti e creano un nuovo Observable.

typescript
import { concat, merge, combineLatest, zip, race, forkJoin } from 'rxjs';

// Utilizzate come Creation Function
const combined$ = concat(obs1$, obs2$, obs3$);
const merged$ = merge(source1$, source2$);

Per i dettagli, consultare Creation Functions.

Pipeable Operators (spiegati in questa pagina)

Utilizzati all'interno di .pipe() su Observable esistenti.

typescript
import { concatWith, mergeWith, combineLatestWith } from 'rxjs';

// Utilizzati come Pipeable Operator
const result$ = source$.pipe(
  map(x => x * 2),
  concatWith(other$),
  filter(x => x > 10)
);

Elenco dei Pipeable Operators

◾ Operatori trattati in questa pagina

OperatoreDescrizione
withLatestFromCombina con i valori più recenti di altri stream in risposta alle emissioni dell'Observable principale
mergeAllAppiattisce un Higher-order Observable in parallelo
concatAllAppiattisce un Higher-order Observable in sequenza
switchAllPassa all'Higher-order Observable più recente
exhaustAllIgnora nuovi Higher-order Observable durante l'esecuzione
combineLatestAllCombina i valori più recenti di tutti gli Observable interni
zipAllAccoppia i valori corrispondenti di ciascun Observable interno

◾ Forniti come Creation Functions

I seguenti sono principalmente utilizzati come Creation Functions (consultare il Capitolo 3).

FunctionDescrizioneVersione Pipeable
concatCombinazione sequenzialeconcatWith (RxJS 7+)
mergeCombinazione parallelamergeWith (RxJS 7+)
combineLatestCombina valori più recenticombineLatestWith (RxJS 7+)
zipAccoppia valori corrispondentizipWith (RxJS 7+)
raceAdotta lo stream più veloceraceWith (RxJS 7+)
forkJoinAttende il completamento di tutti(Nessuna versione Pipeable)

Per approfondire con esempi pratici

Esempi di scenari reali utilizzando gli operatori di combinazione sono presentati in dettaglio in Casi d'uso pratici.

Pubblicato sotto licenza CC-BY-4.0.