如何在 redux 中保存一个对象?
How to save an object in redux?
我在 React 中使用 Redux 构建了一个应用程序,我尝试向我的状态发送一个对象,我尝试将它保存在 'thisUser' 中,但我不知道 如何编写'return'因为我的不行。
我的 Redux 状态:
const initialState = {
thisUser: {}
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: { ...state.thisUser, ...action.payload} } //the problem
default:
return state
}
}
派送方式:
dispatch({ type: "users/addUser", payload: new_user });
你能告诉我 return 怎么写吗?
如果你想追加新用户,那你为什么要使用对象类型。你应该使用数组类型 thisUser.
const initialState = {
thisUser: []
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: [ ...state.thisUser,action.payload ] }
default:
return state
}
}
或
如果您只想保存单个用户对象,则只需更改代码中的那一行:
return { ...state, thisUser: action.payload }
如果您有用户列表,最好使用数组类型。
如果您遇到需要使用对象的情况,只需将我代码中的方括号 [ ] 更改为大括号 { } 即可。
const initialState = {
thisUser: [],
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: [ ...state.thisUser, ...action.payload]}
default:
return state
}
}
我在 React 中使用 Redux 构建了一个应用程序,我尝试向我的状态发送一个对象,我尝试将它保存在 'thisUser' 中,但我不知道 如何编写'return'因为我的不行。
我的 Redux 状态:
const initialState = {
thisUser: {}
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: { ...state.thisUser, ...action.payload} } //the problem
default:
return state
}
}
派送方式:
dispatch({ type: "users/addUser", payload: new_user });
你能告诉我 return 怎么写吗?
如果你想追加新用户,那你为什么要使用对象类型。你应该使用数组类型 thisUser.
const initialState = {
thisUser: []
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: [ ...state.thisUser,action.payload ] }
default:
return state
}
}
或
如果您只想保存单个用户对象,则只需更改代码中的那一行:
return { ...state, thisUser: action.payload }
如果您有用户列表,最好使用数组类型。
如果您遇到需要使用对象的情况,只需将我代码中的方括号 [ ] 更改为大括号 { } 即可。
const initialState = {
thisUser: [],
}
export function usersReducer(state = initialState, action) {
switch (action.type) {
case 'users/addUser':
return { ...state, thisUser: [ ...state.thisUser, ...action.payload]}
default:
return state
}
}