elmentui树形表格使用Sortable拖拽展开行时拖拽bug

1、使用elemntui的el-table使用Sortable进行拖拽,如下

javascript 复制代码
const el = this.$el.querySelector('.el-table__body-wrapper tbody')
Sortable.create(el, {
  onEnd: (event) => {
    const { oldIndex, newIndex } = event
    //拿到更新前后的下标即可完成数据的更新
  }
})

2、但是我这个需求有点特俗,这个table是一个展开行表格,如下:
3、每次当表格展开的时候,因为展开的数据和要拖拽表格数据同属于拖拽元素,所以每次都可以展开内容,这个是不允许的,所以我需要在展开的时候禁止拖拽

4、解决方式:先把这个拖拽对象赋值给vue的一个属性,然后在展开的时候把这个拖拽对象销毁,所有的展开行都关闭的时候再生成一下拖拽对象

javascript 复制代码
// 假设 sortable 是 Sortable.create 返回的对象
var sortable = Sortable.create(/* ... */);

// 关闭整个列表的拖拽功能
sortable.destroy();
相关推荐
董世昌411 分钟前
js怎样控制浏览器前进、后退、页面跳转?
开发语言·前端·javascript
走,带你去玩2 分钟前
uniapp live-pusher + 腾讯云直播
前端·javascript·uni-app
徐同保6 分钟前
electron打包项目
前端·javascript·electron
Maybyy9 分钟前
如何在项目里面添加一个可以左右翻动并显示指定日期的日历
前端·vue.js
前端 贾公子11 分钟前
Vite 如何优化项目的图片体积
vue.js
码界奇点18 分钟前
基于Django与Vue.js的RBAC权限管理系统设计与实现
vue.js·python·车载系统·django·毕业设计·源代码管理
JIngJaneIL39 分钟前
基于Java酒店管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
一只爱吃糖的小羊41 分钟前
React 避坑指南:“闭包陷阱“
前端·javascript·react.js
web前端进阶者43 分钟前
electron-vite报错Unexpected end of JSON input
javascript·electron·json
by__csdn1 小时前
大前端:定义、演进与实践全景解析
前端·javascript·vue.js·react.js·typescript·ecmascript·动画