merge

Crea un Observable de salida que emite concurrentemente los valores de todos los Observables de entrada

Descripción

Une varios Observables en uno solo.

Diagrama de canicas del operador merge

merge se subscribe a cada Observable de entrada de forma concurrente, y emite sus valores, sin transformarlos, en el Observable resultante. El Observable resultante solo se completa cuando todos los Observables de entrada se hayan completado.

Cualquier error lanzado por un Observable de entrada será emitido inmediatamente en el Observable resultante.

Ejemplos

Unir dos Observables ajax

StackBlitzarrow-up-right

import { concat } from "rxjs";
import { ajax } from "rxjs/ajax";

const totoroFilmData$ = ajax.getJSON(
  "https://ghibliapi.herokuapp.com/films/58611129-2dbc-4a81-a72f-77ddfc1b1b49"
);

const charmanderData$ = ajax.getJSON("https://pokeapi.co/api/v2/pokemon/4");

concat(totoroFilmData$, charmanderData$).subscribe(console.log);
// Salida: {..., title: 'My Neighbor Totoro', ...}, { abilities: [], ...}

merge se suscribe de forma concurrente (a la vez) a todos los Observables de entrada, mientras que concat se suscribe a ellos por orden, y hasta que el primero no se complete, no se suscribe al siguiente. Comparación entre concat y merge:

StackBlitzarrow-up-right

Ejemplos de la documentación oficial

Unir 2 Observables: 1s interval y clicks

Unir 3 Observables, pero solo ejecutar 2 de forma concurrente

chevron-rightSobrecargashashtag

Firma

merge(v1: any, scheduler: SchedulerLike): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(v1: any, concurrent: number, scheduler: SchedulerLike): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(v1: any, v2: any, scheduler: SchedulerLike): Observable<T | T2>

Parámetros

Retorna

Observable<T | T2>

Firma

merge(v1: any, v2: any, concurrent: number, scheduler: SchedulerLike): Observable<T | T2>

Parámetros

Retorna

Observable<T | T2>

Firma

merge(v1: any, v2: any, v3: any, scheduler: SchedulerLike): Observable<T | T2 | T3>

Parámetros

Retorna

Observable<T | T2 | T3>

Firma

merge(v1: any, v2: any, v3: any, concurrent: number, scheduler: SchedulerLike): Observable<T | T2 | T3>

Parámetros

Retorna

Observable<T | T2 | T3>

Firma

merge(v1: any, v2: any, v3: any, v4: any, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4>

Parámetros

Retorna

Observable<T | T2 | T3 | T4>

Firma

merge(v1: any, v2: any, v3: any, v4: any, concurrent: number, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4>

Parámetros

Retorna

Observable<T | T2 | T3 | T4>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4 | T5>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, concurrent: number, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4 | T5>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4 | T5 | T6>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5 | T6>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, concurrent: number, scheduler: SchedulerLike): Observable<T | T2 | T3 | T4 | T5 | T6>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5 | T6>

Firma

merge(v1: any): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(v1: any, concurrent?: number): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(v1: any, v2: any): Observable<T | T2>

Parámetros

Retorna

Observable<T | T2>

Firma

merge(v1: any, v2: any, concurrent?: number): Observable<T | T2>

Parámetros

Retorna

Observable<T | T2>

Firma

merge(v1: any, v2: any, v3: any): Observable<T | T2 | T3>

Parámetros

Retorna

Observable<T | T2 | T3>

Firma

merge(v1: any, v2: any, v3: any, concurrent?: number): Observable<T | T2 | T3>

Parámetros

Retorna

Observable<T | T2 | T3>

Firma

merge(v1: any, v2: any, v3: any, v4: any): Observable<T | T2 | T3 | T4>

Parámetros

Retorna

Observable<T | T2 | T3 | T4>

Firma

merge(v1: any, v2: any, v3: any, v4: any, concurrent?: number): Observable<T | T2 | T3 | T4>

Parámetros

Retorna

Observable<T | T2 | T3 | T4>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any): Observable<T | T2 | T3 | T4 | T5>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, concurrent?: number): Observable<T | T2 | T3 | T4 | T5>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, v6: any): Observable<T | T2 | T3 | T4 | T5 | T6>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5 | T6>

Firma

merge(v1: any, v2: any, v3: any, v4: any, v5: any, v6: any, concurrent?: number): Observable<T | T2 | T3 | T4 | T5 | T6>

Parámetros

Retorna

Observable<T | T2 | T3 | T4 | T5 | T6>

Firma

merge(...observables: any[]): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(...observables: any[]): Observable<T>

Parámetros

Retorna

Observable<T>

Firma

merge(...observables: any[]): Observable<R>

Parámetros

Retorna

Observable<R>

Firma

merge(...observables: any[]): Observable<R>

Parámetros

Retorna

Observable<R>

Recursos adicionales

Source codearrow-up-right

Documentación oficial en inglésarrow-up-right

Last updated