splice 会改变原数组 splice的时候 源数据改变了 react没监听到

原因: list是浅拷贝this.state.list,因此,list进行splice,就是this.state.list进行splice,之后进行serState的时候,react发现,list就是原来的那个list(内存地址相同),因此,他就默认list没有改变,于是就不更新页面。

使用splice动态修改循环展示数据,数据能更新,但是dom不更新

正确做法

setlist((list)=>{
      var listA = JSON.parse(JSON.stringify(list))
      listA.splice(index+1, 0, {name: '人伤材料-鲁A111111'})
      return listA  
});
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐