点击组件的 加 减 按钮时,发现数据无法更新,或者无法正常更新,每次只能点一两下,然后数值就不动了,而且它居然 还能影响其他行的组件。
在cdsn看了一些相关文章,最后在这里看到一句话,
说这个问题是因为“绑定的数据未刷新是vue的绑定深度过多,没有关联绑定起来”
然后博主提供的解决方案是通过添加key属性来解决,我没试,我直接从数据源那里解决。
之前是从服务端获取数据列表,然后forEach逐条push给tableData。
tableData = []
res.list.forEach((row)=>{
tableData.push(row)
})
现修改为:
tableData = []
res.list.forEach((row)=>{
tableData.push(JSON.parse(JSON.stringify(row)))
})
经测试问题也可以完美解决,不需要key/row-key设置,表格中prop、v-model也都正常操作就可以了。
文章讲述了在Vue中遇到表格组件数据无法正常更新的问题,尤其是点击加减按钮时。问题根源在于数据绑定的深度过多。作者通过将服务端返回的列表数据用JSON.parse(JSON.stringify(row))处理后再push到tableData,成功解决了问题,无需使用key属性。这种方法确保了数据的新颖性,避免了Vue的引用问题。

2726

被折叠的 条评论
为什么被折叠?



