react-redux - reducer 中的状态被初始化为嵌套对象
问题描述
状态设置为嵌套对象 {profile: {profile: {}} 而不是 {profile: {}}。然后商店也有这个嵌套对象。
const profile = {
nickname: '',
avatar: '',
};
export default (state = {profile}, action) => {
switch (action.type) {
case 'GET_PROFILE':
return {
...state,
profile: action.payload
};
default:
return state;
}
}
解决方案
正如您在评论中提到的 action.payload 将是 {profile: {...}}。
这就是你想要做的profile: {profile: {...}}
因此,您可以做的一件事就是profile: action.payload.profile
它应该可以解决您的问题。
或者在调度操作 GET_PROFILE 时,您可以发送 {the ... =nickname: 'Dany', avatar: 'somepath.jpg'} 作为数据而不是 {people: {the ... =nickname: 'Dany', avatar: 'somepath.jpg'}}。所以这样你就可以将action.payload保留在 reducer 中。
推荐阅读
- java - 将 toPandas() 与 PySpark 一起使用时,如何避免 java.io.StreamCorruptedException: invalid stream header: 204356EC?
- database-design - 数据库设计 - 将订单数据库表拆分为买入/卖出
- timestamp - 如何在 ASP 经典中捕获窗口断开连接的时间戳
- ios - Swift iOS AudioKIt:呈现模态视图会导致音频爆裂
- c - 从 C 中的外部文件中扫描多行文本
- matplotlib - mplot3d Axes3D.contour()中参数stride的意义是什么?
- snowflake-cloud-data-platform - 如何找出阶段用于清理的存储空间
- square-connect - 先生,如何在反应中整合付款
- c# - Entity Framework 复合主键和外键
- javascript - 试图通过Javascript添加假点击ul li项目