在减速器中使用条件是糟糕的想法吗?像这样:
case types.SET_SOME_ACTION:
if(typeof someElement !== "undefined") {
return Object.assign({}, state, {
someElement: action.value
})
}
试着看看这是否是反模式。感谢。
答案 0 :(得分:1)
我认为将您的业务逻辑置于行动创建者中是一种普遍的共识。这使得减速器只承担一项责任:更新状态。
有关详情,请参阅此讨论:https://github.com/reactjs/redux/issues/1165
redux FAQ还推荐使用哑巴减速器:http://redux.js.org/docs/faq/CodeStructure.html#how-should-i-split-my-logic-between-reducers-and-action-creators-where-should-my-business-logic-go
就个人而言,我只在redux商店中进行简单验证,实际的业务逻辑由Redux Observable或Redux Thunk处理。