Наблюдаемая за редуксом вилка - PullRequest
1 голос
/ 17 апреля 2020

Я как-то изо всех сил пытаюсь придумать мраморную диаграмму при использовании forkJoin. Мой вывод как-то всегда говорит, что подписка пуста.

Псевдокод:

// epic
const epic = (action$) => action$.pipe(
  ofType('SAVE'),
  mergeMap(() => {
    const requests = [
      getJSON('/a'),
      getJSON('/b'),
      getJSON('/c'),
    ];
    return forkJoin(
      ...requests
    ).pipe(
      mergeMap(() => [
        { type: 'SAVE_DONE'},
        { type: 'LOAD'},
      ])
    );
  })
);

// mock
const dependencies = {
  getJSON: url => cold('g', {
    g: { url }
  })
};

// input
hot('i', {
  i: { type: 'SAVE' }
} 
// output??

forkJoin идет параллельно, но на мраморной диаграмме это последовательно? ggg? Потому что, если мы посмотрим на весь поток, это igggxy, где x и y - действия SAVE_DONE и LOAD. Или я совершенно не понимаю этого?

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