如果属性更改发生在嵌套对象中,React Redux不会识别道具更改

时间:2019-08-05 12:59:08

标签: reactjs redux react-props

我的商店中有一个 card 对象,它由一系列类别组成,类别内还有另一种称为 barriers < / strong>。我从前端更新一个障碍,然后在商店中完成更改。但是更改不会反映在视图/渲染中。这是需要更新的对象的结构。

.println()

我该如何在视图中呈现它。我知道一种方法是规范化我的数据结构。但是还有其他方法可以做到这一点吗?。

2 个答案:

答案 0 :(得分:3)

选中此object assign documentation。部分示例->深度克隆警告。我认为您的reducer返回对象是===作为状态对象,因此react无法检测到更改。尝试json.parse(json.stringify)解决方法或使用immutable-js。检查并调试 MapStateToProps 函数。

答案 1 :(得分:0)

我认为问题在于您要传递对象引用,而您必须传递新的克隆对象。 我始终使用immutability-helper模块来确保将新对象传递到新状态。但是有很多选择,例如用cloneDeep或lodash或简单地手动Object.assign()状态树上的每个对象。