我正在使用react本机平面列表来呈现格式为
的数据data = {item1:{ 文字:“ abcd”,id:1 }, item2:{ 文字:“ xyz”,id:2 } }
问题是,当我更改item1的文本属性时,它不会重新呈现。我还设置了额外的数据来设置为this.state.data。另外,我正在创建数据的副本,然后再更改其值,然后使用set state设置数据的新值。
答案 0 :(得分:0)
您只能在列表中正确更改项目。因此该列表未更改,它仍然是相同的列表。这就是为什么不重新渲染组件的原因。您需要创建一个新列表并将数据复制到该列表。如
const newList = [...oldListWithDataUpdated ]
您可以阅读这篇帖子https://blog.logrocket.com/immutability-in-react-ebe55253a1cc/以获得更多信息。