采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
如果不设置 tableData = []。仔细观察之后可以发现 table 并不是没有刷新,只是排名没有刷新。因为页面通过排序改变顺序之后,tableData 源数据顺序的并没有改变。vue是通过对比新旧源数据diff来更新渲染的。element-plus默认使用index作为:key。所以key的值永远不会改变。diff算法对比更新时,key值不变,vue不会更新组件,只会替换组件的属性值。设置 row-key = "_id" 便可解决此 bug 。
你好
这个应该是 element-plus 的问题,它无法处理这种问题。所以我们需要手动的激活它的处理选项(响应式功能)
老师我觉得是跟element-plus的<el-table />的:key有关,它应该默认使用了v-for 的index作为:key。我试了一下添加了【row-key = "_id"】,就不用再重新把tableData.value = [] 设置为空了,拖放的时候,排序也没出现乱序,也自然刷新了。
有可能类似于 node_Key 的机制
登录后可查看更多问答,登录/注册
基于Vue3重写Vue-element-admin,打造后台前端综合解决方案
2.4k 1
1.6k 6
4.3k 5
604 2
1.4k 2