gpt4 book ai didi

javascript - React object.map 由于 key 而未更新

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:50 24 4
gpt4 key购买 nike

我遇到的基本问题是,我使用 AJAX 请求更新数据,然后设置数据状态,但在 View 中,即使我的状态已更新,数据也永远不会更新。我发现这是因为 key 是相同的(这应该是因为我只是使用 mongoose 提供的 ID)。

如果我执行诸如将状态设置为空然后设置新数据之类的操作,那么它就会更新。或者,如果我将 key 设置为随机生成的 key ,它也可以工作,但两者都感觉不对。我想知道使用 map 功能时重新渲染更新后的对象的正确方法是什么。

它看起来像这样:

Object.keys(this.state.data).map((i) => (
<MyComponent key={ this.state.data[i]._id }
))

然后我有一个基本的 AJAX 请求,它执行 this.setState({ data: response.data })

如何正确地 react 更新已更新项目的 View 中的数据?

最佳答案

您可以将索引添加为 _id 的前缀吗?

key={ `${i}_${this.state.data[i]._id}`}

关于javascript - React object.map 由于 key 而未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46435137/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com