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();
相关推荐
徐同保几秒前
n8n+GPT-4o一次解析多张图片
开发语言·前端·javascript
老华带你飞3 分钟前
工会管理|基于springboot 工会管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring
GISer_Jing13 分钟前
AI赋能前端:从核心概念到工程实践的全景学习指南
前端·javascript·aigc
不爱吃糖的程序媛21 分钟前
Flutter-OH OAuth 鸿蒙平台适配详细技术文档
javascript·flutter·harmonyos
前端OnTheRun28 分钟前
如何禁用项目中的ESLint配置?
javascript·vue.js·eslint
前端无涯35 分钟前
APP 内嵌 H5 复制功能实现:从现代 API 到兼容兜底方案
javascript
打工人小夏1 小时前
vue3使用transition组件,实现过度动画
前端·vue.js·前端框架·css3
LFly_ice1 小时前
Next-1-启动!
开发语言·前端·javascript
仰望.1 小时前
vue 甘特图 vxe-gantt table 依赖线的使用,配置连接线
vue.js·甘特图
cc蒲公英1 小时前
vue nextTick和setTimeout区别
前端·javascript·vue.js