假设我有一个reducer,我想根据state.propertyC
的值更新state.propertyA
或state.propertyB
。类似于:
const conditionalReducer: CaseReducer<StateType, PayloadActionType> = (state, action) => {
if(state.propertyC === true) {
state.propertyA = action.payload;
} else {
state.propertyB = action.payload;
}
}
这被认为是好的实践吗?或者我应该创建两个单独的reducer,并在决定运行哪个操作之前应用条件逻辑?
我试着寻找这个问题的答案,但是没有找到任何关于这个问题的具体信息。我发现很难理解在redux状态流中在哪里做什么,以及允许做什么,遵循最佳实践。
我也在应用程序的其他地方使用thunk中间件,但是我对它很陌生,但是我认为如果有更好的选择包括thunk,它可能值得一提!
1条答案
按热度按时间8ulbf1ek1#
这是非常好的。如果你看一下Redux风格指南,你会发现你应该把尽可能多的逻辑放进你的Reducers中