Aquí hay una pseudo función que se supone que debe completarse pero no ObservableFunctionA itera sobre una matriz de datos, ya que escupe los elementos ObservableFunctionB ejecuta a través de cada elemento
ObservableFunctionA(parameter1,parameter2) .pipe( mergeMap((res) => { //use res // -->parameter3,parameter4 return ObservableFunctionB(parameter3,parameter4) }) ) .subscribe({ next(x) {}, error(err) { console.error("something wrong occurred: " + err); }, complete() { console.log("done"); }, });Esta es la función observable B
const ObservableFunctionB = (p1,p2) => { return new Observable((observer) => { promiseA .then((res) => { //Do stuff observer.next(manipulatedRes); if (condition) { console.log("This is actually logged, the line below doesnt get executed!"); observer.complete(); } }) .catch((err) => { observer.error(err); }); }); };Se alcanza la condición, la línea se registra pero no se llama a la función completa del observador
¿Por qué?