Ваше действие публикует свойство val
, а ваш редуктор читает свойство value
.
Измените ваши действия таким образом, и это будет работать:
store.dispatch({type: `ADD`, value: 10});
store.dispatch({type: `SUBTRACT`, value: 5});
РЕДАКТИРОВАТЬ:
Вы заменяете старое значение age
, но, возможно, вы хотите добавить или вычесть его. Вы должны изменить свой редуктор, чтобы добиться такого поведения:
const reducerOne = (state = initialState, action) => {
const newState = {...state};
if(action.type === `ADD`) {
// add to the previous `age` value and do not overwrite it
newState.age = state.age + action.value;
}
if(action.type === `SUBTRACT`) {
// subtract from the previous `age` value and do not overwrite it
newState.age = state.age - action.value;
}
return newState;
}