我在设计redux reducer时遇到了必须添加嵌套表单数据的情况。我无法想到一种情况。
包含突变的声明是:
state[var1][var2] = val
我们如何以非变异的方式编写它,以便可以在reducer中使用。
只需执行以下操作:
return {
...state,
var1: {
...state.var1,
var2: val
}
};
或者您可以使用immer
:
import produce from "immer";
let val = 5;
const state = { var1: { var2: 3 } };
const nextState = produce(state, draftState => {
draftState.var2 = val;
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句