2022-10-21 react setData改变变量,视图却没有更新

解决方案1:

如果你的视图业务中是由map遍历构建的,那么大概率是因为map遍历使用的key没有被更改所导致,比如你给key绑定的是数组的下标(index),

每次更新数据的时候它返回来的下标还是0,1,3,4,5......

如此,react就会认为你没有改变数据,从而render就不会被再次渲染,你可以试着改变你的下标,比如:

data.map((item,index) => {
    return (
        <div key={index}>{item}</div>
    )
})            

改成:

data.map((item,index) => {
    return (
        <div key={item+index}>{item}</div>
    )
})            

这样一来下标肯定每次都不一样,从而更新视图。

posted @ 2022-10-21 13:56  叶乘风  阅读(699)  评论(0编辑  收藏  举报