Redux 重复嵌套状态设计
目前有一种状态变得越来越复杂,我想知道我是否做错了,下面是我使用的减速器示例Redux 重复嵌套状态设计,redux,Redux,目前有一种状态变得越来越复杂,我想知道我是否做错了,下面是我使用的减速器示例 case RECEIVE_DEPARTMENT_DAYDATA: return { ...state, departments: { ...state.departments, [action.payload.targetDepartment]: { ...state.departments[act
case RECEIVE_DEPARTMENT_DAYDATA:
return {
...state,
departments: {
...state.departments,
[action.payload.targetDepartment]: {
...state.departments[action.payload.targetDepartment],
dayData: {
...state.departments[action.payload.targetDepartment].dayData,
[action.payload.day]: {
...state.departments[action.payload.targetDepartment].dayData[action.payload.day],
[action.payload.targetField]: {
...action.payload.data,
isFetching: false,
receivedAt: new Date(),
didInvaldiate: false,
didCall: true
}
}
}
}
}
};
将dayData移动到它自己的reducer是更好还是没有区别?我的建议是将您的状态规范化为平坦状态 你应该看看: 看看Dan Abramov在egghead上关于redux状态正常化的视频: 关于如何管理redux州,这节书呆子课是我学到的最重要的东西之一,我强烈建议大家多看看,多读一些这方面的内容
最近twitter发布了他们的移动网站react和redux,其中有一篇文章剖析了他们的状态,这可能也是一个有趣的阅读:我的建议是将你的状态正常化为一个平坦的状态 你应该看看: 看看Dan Abramov在egghead上关于redux状态正常化的视频: 关于如何管理redux州,这节书呆子课是我学到的最重要的东西之一,我强烈建议大家多看看,多读一些这方面的内容
最近twitter发布了他们的移动网站react和redux,其中有一篇文章剖析了他们的状态,这可能也是一个有趣的阅读:您的不可变嵌套数据更新示例是正确的。然而,@Canastro也是正确的——这是正常化的一个很好的候选者
我鼓励您通读Redux文档中的和,以及我的部分文章。您的不可变嵌套数据更新示例是正确的。然而,@Canastro也是正确的——这是正常化的一个很好的候选者
我鼓励您通读Redux文档中的和,以及我的部分中的一些文章。我认为这需要一个大的重构。任何人都不可能在合理的时间内阅读和理解这些内容。当您最终从原始状态传播大量属性时,这是一个好迹象,您可能还需要更改数据的结构。@BalázsÉdes我就是这么想的。我是州设计的新手,欢迎任何帮助。基本上,我每个部门都有
dayData
。这个dayData
也有键。有什么方法可以减少数据的“嵌套”吗?在单独的集合中处理实体,并通过id或其他方式引用它们?也许可以看看@BalázsÉdes,我很确定我可以将dayData作为一个单独的减缩器进行分离。normalizer看起来很有趣,但不是我应该如何使用它:/。在我看来,这需要一个大的重构。任何人都不可能在合理的时间内阅读和理解这些内容。当您最终从原始状态传播大量属性时,这是一个好迹象,您可能还需要更改数据的结构。@BalázsÉdes我就是这么想的。我是州设计的新手,欢迎任何帮助。基本上,我每个部门都有dayData
。这个dayData
也有键。有什么方法可以减少数据的“嵌套”吗?在单独的集合中处理实体,并通过id或其他方式引用它们?也许可以看看@BalázsÉdes,我很确定我可以将dayData作为一个单独的减缩器进行分离。normalizer似乎很有趣,但我不知道该如何使用它:/。不知道他有一个教程系列!我会看看这个的,谢谢!不知道他有一个教程系列!我会看看这个的,谢谢!