Вернуть пустую наблюдаемую, если все наблюдаемые завершены - PullRequest
0 голосов
/ 12 октября 2018

У меня есть метод cancelPreload, где я собрал n число Observable<void> s внутри массива.Чего я хочу добиться, так это вернуть один Observable<void>, если все наблюдаемые внутри массива завершаются успешно.Я использую оператор forkJoin с комбинацией оператора распространения ....Проблема в том, что когда я вызываю метод cancelPreload, он выполняет только первую наблюдаемую часть внутри myArrayOfObservables, остальные наблюдаемые почему-то игнорируются.Любая идея, почему и как это исправить?

public cancelPreload(): Observable<void> {
   ...
   some boring stuff
   ...
   const myArrayOfObservables: Observable<void>[] = [obs1, obs2, ..., obsn]
   return forkJoin(...myArrayOfObservables)
}

...
calling the method in other part of the app
...

this.cancelPreload.subscribe() // only obs1 get executed,
                                  other observables inside
                                  myArrayOfObservables are ignored

РЕДАКТИРОВАТЬ:

Я решил это с оператором merge, но я не понимаюпочему merge работает, а forkJoin - нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...