我希望根据用户输入更新嵌套对象中的值。例如,如果用户选择更新他们的国家和街道,只有这些值将作为 action.payload 传递给 reducer 并更新(其余状态将保持不变)。我提供了我的初始状态和减速器:
我的状态:
const initialState = {
userData: [
{
firstName: "",
lastName: "",
country: "",
address: {
street: "",
houseNumber: "",
postalCode: "",
}
}
],
error: null,
};
export default (state = initialState, action) => {
switch (action.type) {
case GET_USER_DATA:
return { ...state, userData: action.payload };
case UPDATE_USER_DATA:
return {
...state,
userData: [{
...state.userData,
...action.payload,
}]
};
default:
return state;
}
};
任何帮助都会很棒,谢谢!!