简单vue指令实现 el-table 可拖拽表格功能

devtools/2024/10/16 2:24:55/

安装 SortableJS

sorttableJs 相关优点如下:
在这里插入图片描述

相关配置项 参考 👉 SortableJS中文官网

javascript">pnpm i sortablejs

封装成指令

不多逼逼,直接上才艺 🤪🤪🤪
先安装一个 nanoid 插件 用于生成随机id,注意事项看源码。

javascript">import { nanoid } from 'nanoid';
import Sortable from 'sortablejs';/*** 可拖拽表格指令* 使用方式,el-table 标签上添加  v-sort-table="tableData" ,tableData: 表格数据* 注意: el-table 要指定 row-key='id'   id 字段为指令内部生成* 插件:https://sortablejs.com/*/export default {name: 'sortTable',mounted(el: HTMLElement, binding: { value: Array<any> }) {const data = binding.value.map((i) => ({ id: nanoid(8), ...i })); // 处理表格原始数据生成id keyconst targetEl = el.querySelector('.el-table__body-wrapper tbody') as HTMLElement;if (targetEl) {Sortable.create(targetEl, {onEnd(evt) {const { oldIndex, newIndex } = evt;const movedItem = data.splice(oldIndex as number, 1)[0];data.splice(newIndex as number, 0, movedItem);},});}},
};

使用

ok 放心拿去造吧🤭

javascript"> <el-tablev-sort-table="$editItem.props":data="$editItem.props"</el-table>          

http://www.ppmy.cn/devtools/119571.html

相关文章

滚雪球学Oracle[6.1讲]:高级特性与实战案例

全文目录&#xff1a; 前言0. 上期回顾1. Oracle RAC技术概述1.1 RAC架构下的高可用性设计1.2 RAC集群中的并行查询与负载均衡1.3 RAC集群中的缓存一致性管理 2. Data Guard与灾难恢复2.1 Data Guard中的同步模式与异步模式2.2 Data Guard的切换与故障转移策略2.3 Data Guard B…

【工程测试技术】第3章 测试装置的基本特性,静态特性和动态特性,一阶二阶系统的特性,负载效应,抗干扰性

目录 3.1 概述 1测量装置的静态特性 2.标准和标准传递 3.测量装置的动态特性 4.测量装置的负载特性 5.测量装置的抗干扰性 1.线性度 2.灵敏度 3.回程误差 4.分辨力 5.零点漂移和灵敏度漂移 3.3.1 动态特性的数学描述 1.传递函数 2.频率响应函数 3.脉冲响应函数 …

汽车自研算法部署芯片份额浅思

国内汽车行业如火如荼发展,汽车从业的研发人员也激增,从三电到座舱到智能驾驶和动力底盘一体化发展。 芯片承载着算法落地,国内主流的主机厂(OEM)的EE架构规划都基本使用主流的车规级芯片,如 英飞凌(Infineon):德国半导体制造商,行业当前在预控的SOC的MCU选择TC39X…

LeetCode 面试经典150题 172.阶乘后的零

题目&#xff1a;给定一个整数 n &#xff0c;返回 n! 结果中尾随零的数量。 提示 n! n * (n - 1) * (n - 2) * ... * 3 * 2 * 1 思路&#xff1a; 代码&#xff1a; class Solution {public int trailingZeroes(int n) {return n 0 ? 0 : n / 5 trailingZeroes(n / 5);}…

UE5: Content browser工具编写

Extend content browser 创建自定义菜单入口的步骤&#xff1a;create custom menu entry. steps: Load content browser module -> PathViewContextMenuExtenders -> Add in our own delegate -> Bind to our own member functions 基础概念&#xff08;本文实…

Go语言流程控制

Go语言流程控制 1.IF-ELSE2.Switch-Caseswitch 语句Type Switch 3.select 语句4.循环语句 1.IF-ELSE Go 编程语言中 if 语句的语法如下&#xff1a; if 布尔表达式 {/* 在布尔表达式为 true 时执行 */ }例如&#xff1a; package mainimport "fmt"func main() {va…

自然语言处理实例

引子:基于聊天机器人项目的自然语言处理(NLP)学习路线 自然语言处理(Natural Language Processing,简称 NLP)是人工智能的重要分支,旨在帮助计算机理解、生成和处理人类语言。NLP 技术广泛应用于搜索引擎、机器翻译、语音识别、文本摘要、情感分析、对话系统等领域。为…

决策树中联合概率分布公式解释说明

学习决策树时书本中有一公式 7-3 是&#xff1a; P ( X x i , Y y j ) p i j ( i 1 , 2 , … , m , j 1 , 2 , … , n ) P(X x_i, Y y_j) p_{ij} \quad (i 1, 2, \dots, m, \ j 1, 2, \dots, n) P(Xxi​,Yyj​)pij​(i1,2,…,m, j1,2,…,n) 这个公式表示的是随机变…