Спросите себя, правильно ли вы структурировали свои редукторы.Если a и b не являются независимыми друг от друга, почему они являются отдельными редукторами?
Хорошо, если мы говорим о правильном построении редуктора, cachedInput
и todoList
должны жить в одном редукторе.Нет необходимости создавать еще один редуктор.Также я предполагаю, что вам нужно сразу получить входное значение (когда пользователь нажимает на кнопку отправки) и отправить его в хранилище.
Если вы все еще хотите создать отдельные редукторы, то вы можете следовать приведенному ниже подходу:
Ответ на Как получить доступ или поделиться данными, уже находящимися в хранилище, внутри редукторов?
Не использовать combReducers.
Пример
заменить этот код
export const a = combineReducers({
cachInput,
newTodo
});
с
export default (state = {}, action) => {
return {
cachInput: cachInput(state.app, action, state),
newTodo: newTodo(state.posts, action, state),
};
};
редуктор будет выглядеть как
const reducer = (state = initialState, action, root) => {....}
, и вы можете получить доступ к предыдущему состоянию с root