el-table 实现行拖拽排序

element ui 表格实现拖拽排序的功能,可以借助第三方插件Sortablejs来实现。

引入sortablejs

复制代码
npm install sortablejs --save
组件中使用
复制代码
import Sortable from 'sortablejs';

 <el-table ref="el-table":data="listData" row-key="id" style="width: 100%">
 </el-table>

注意:el-table一定要设置row-key,且row-key绑定的值唯一,不然拖拽可能乱序

复制代码
 mounted() {
    this.initSort()
 },
 initSort() {
    const el = this.$refs['el-table'].$el.querySelector('.el-table__body-wrapper > table > tbody')
    let _this = this;
    const ops = {
       animation: 200, //动画时长
       handle: ".el-table__row", //可拖拽区域class
       //拖拽中事件
       onMove: ({ dragged, related }) => {
         const oldRow = _this.listData[dragged.rowIndex] //旧位置数据
         const newRow = _this.listData[related.rowIndex] //被拖拽的新数据
       },
       //拖拽结束事件
       onEnd: evt => {
         const curRow = _this.listData.splice(evt.oldIndex, 1)[0]
         _this.listData.splice(evt.newIndex, 0, curRow)
       }
    }
    Sortable.create(el, ops)
 },
相关推荐
意疏6 分钟前
2026年远控软件安全横评:六款主流工具逐项核查——官方文档、一手实测与安全事件,全摊开
大数据·前端·数据库
梦曦i9 分钟前
RouterLink H5端控制台错误修复
前端·uni-app
qq_5486124511 分钟前
.NET 平台报表工具汇总(.NET Framework /.NET6-8,中国式复杂报表、Web 嵌入、填报、导出打印)
前端·.net
懒狗小前端29 分钟前
自嗨不如一起嗨
前端
郑州光合科技余经理1 小时前
海外版多语言团购系统架构:主数据互通与核销边界
java·开发语言·前端·后端·系统架构·php·ai编程
达令哥1 小时前
告别 ARouter!基于 Google 官方 Navigation 3 + KSP 打造 Compose 时代的双轨制路由框架
android·前端
ITmaster07312 小时前
前端 AI 面试题:高频考点与实战解析
前端·人工智能
赵大仁2 小时前
Structured Output 落地:JSON Schema、重试与前端校验
前端·ai·大模型·工程化·json schema
李剑一2 小时前
有点干,前端架构基础之:Web Worker到底是什么?它和Java中的线程是一个道理吗?
前端·面试·架构