老师这里为啥不把tableData置为空,table不刷新呢?
来源:9-10 方案落地:完成拖拽后的排序
前端小把戏
2021-12-14
写回答
2回答
-
OrcXiao
2023-02-10
如果不设置 tableData = []。
仔细观察之后可以发现 table 并不是没有刷新,只是排名没有刷新。
因为页面通过排序改变顺序之后,tableData 源数据顺序的并没有改变。vue是通过对比新旧源数据diff来更新渲染的。element-plus默认使用index作为:key。所以key的值永远不会改变。diff算法对比更新时,key值不变,vue不会更新组件,只会替换组件的属性值。
设置 row-key = "_id" 便可解决此 bug 。10 -
Sunday
2021-12-14
你好
这个应该是 element-plus 的问题,它无法处理这种问题。所以我们需要手动的激活它的处理选项(响应式功能)
022022-04-13
相似问题