У вас есть несколько вариантов.
1) В вашем React Component вы можете подключиться к состоянию, которое обновляется вашим редуктором при ADD_PAGES_SUCCESS. В componentWillReceiveProps
вы можете проверить этот подключенный элемент состояния и отправить действие, которое вы хотите выполнить после шага (5), из своего компонента.
... не очень хорошо, потому что componentWillReceiveProps
может быстро стать волосатым, и по возможности его следует избегать.
2) Используйте redux-thunk или redux-saga:
С помощью Redux-saga в ваших обработчиках ACTION (sagas) вы можете take
ACTIONS и выполнять такие вещи, как условно совершать вызовы API и yield
(ждать) ответа сервера, после чего вы можете вызвать (put
) больше ДЕЙСТВИЙ или делать больше вызовов API или делать что-либо еще, что вы хотите. Это не заменит ваши редукторы и не изменит ваше состояние притока.
Пример:
// worker Saga: will be fired on ADD_PAGES_SUCCESS actions
function* doStuffAfterAddPages(action) {
while (true) {
yield take(ADD_PAGES_SUCCESS);
try {
let moreData;
const result = yield call(api.doSomethingElse);
if (result.isExpected) {
moreData = yield call(api.doOtherStuff);
} else {
moreData = yield call(api.doOtherStuff);
}
yield put(OTHER_STUFF_COMPLETE, { data: moreData });
} catch (error) {
yield put(OTHER_STUFF_FAILED, { error: error.message);
}
}
}