Tengo 4 API, sean A, B, C, D y quiero obtener datos combinados de las 4 API en un solo observable.
Quiero usar forkJoin([A,B]) y usar la respuesta de forkJoin en forkJoin([C,D]) . Ejemplo:
return forJoin([a,b]).pipe(map result=>{ return forkJoin([c(a.result),d(a.result,b.result)]); })El problema es que solo obtengo una respuesta API C y D. Cualquiera puede ayudarme.
En primer lugar, debe haber un switchMap para devolver el forkJoin interno. Y si desea devolver también la respuesta a y b , puede usar of resultado original:
return forkJoin([a,b]).pipe( switchMap(result => { return forkJoin([c(result[0]),d(result[0], result[1]), of(result)] }) })Ahora obtienes una matriz de los 3 resultados, siendo el último la matriz de la primera respuesta