对于redux reducer步骤:
如果我只想更改initial_state的单个属性怎么办。例如:
const INITIAL_STATE = {
signInInfo: {
signin: false,
name: "",
email: "",
...
},
changePassword: {
status: false,
...
}
...
};
在这里,我只想将
signInInfo.signin
设置为true
,目前,我知道的唯一方法是输入一个完整的“ signInInfo”,例如:case SIGNIN_USER:
return { ...state, signInInfo: action.payload.data };
action.payload.data
类似于:{
signin: true,
name: "Qing",
email : ...
}
另一个问题是,如果我想将
signInInfo.signin
设置为false
,同时还需要将changePassword.status
从false
更改为true
,该怎么办?我该怎么办?谁能给我一个提示?
最佳答案
非常简单(两个问题):
case SIGNIN_USER: return {
...state,
signInInfo: {
...state.signInInfo,
signin: action.payload.signin
},
changePassword: {
...state.changePassword,
status: true
}
};