После того, как вызов API получает данные, мне нужно вызвать ряд дальнейших действий на FETCH_DATA_SUCCESS
.
Действия 'RESET_IMAGE_DATA'
и 'INITIALISE_FILTERS'
должны вызываться на каждом 'FETCH_DATA_SUCCESS'
. Однако 'SET_PIVOT'
должен вызываться только тогда, когда action.context === 'pivot'
.
Итак, есть 2 возможных случая.
В первом случае 'RESET_IMAGE_DATA'
и 'INITIALISE_FILTERS'
называются.
Во втором случае вызываются 'RESET_IMAGE_DATA'
, 'INITIALISE_FILTERS'
и 'SET_PIVOT'
.
Я попробовал все виды решений безуспешно, и моя последняя попытка приведена ниже. Любая помощь будет оценена.
const loadDataEpic = (action$, state$) =>
action$.pipe(
ofType('FETCH_DATA_SUCCESS'),
mergeMap(action => {
if (action.context === 'pivot') {
return of({
type: 'SET_PIVOT',
});
}
return of(
{
type: 'RESET_IMAGE_DATA',
},
{
type: 'INITIALISE_FILTERS',
}
)}
)
);