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.