0
オブジェクトを使用して、レデューサーのどの部分が実行されているかを決定したい。私の現在の例は、主にreduxドキュメントからです。例:還元レデューサー用の複数のキー
export const todos = createReducer(initialState, {
[ADD_TODO]: function (state, action) {
return [ ...state, text: action.text ]
}
})
function createReducer(initialState, handlers) {
return function reducer(state = initialState, action) {
if (handlers.hasOwnProperty(action.type)) {
return handlers[action.type](state, action)
}
return state;
}
}
これはほとんどのユースケースでうまくいきますが、複数の操作で同じ機能を実行することをお勧めします。たとえば、私は次のことを行うと、典型的な減速に:
createReducer(initialState, {
[ADD_TODO, ADD_TODOS]: function (state, action) {
// do stuff
クリーンなアプローチのための任意のアイデアを:
case: ADD_TODO:
case: ADD_TODOS:
// Do stuff and return state
return [ ...state, text: action.text ]
私のような何かを行うことができるようにしたいですか?