首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ElementUI 基于vue+sortable.js实现表格行拖拽

基于vue+sortable.js实现表格行拖拽 实践环境 sortablejs@1.13.0 vue@2.6.11 element-ui@2.13.2 安装sortable.js拖拽库 npm install...newIndex:目标位置对应行的索引 * oldIndex:被拖拽行的索引 * * ====================(被拖拽记录行...* ====================(被拖拽记录行2) * 如果从上往下拖拽,即newIndex > oldIndex,那么在目标位置对应记录行上移(目标位置对应记录行索引值减...1),在newIndex所指位置插入被拖拽行(被拖拽行索引设置为newIndex),视觉效果就是在after位置(即目标位置对应行下方)插入被拖拽行 * 如果从下往上拖拽,即newIndex...位置对应记录行下移(目标位置对应记录行索引值加1),在newIndex所指位置插入被拖拽行(被拖拽行索引设置为newIndex),视觉效果就是在上述before位置(即目标位置对应行上方

3.5K10

实现表格行的拖拽以及分页

背景 在做一些后台管理系统时,表格的数据信息展示是很常见的需求,而对应的都是一些增删改查的操作 有的表格甚至要求会做拖拽,排序等 涉及到的知识 1: 如何渲染表头数据以及表格数据 2: 最右侧管理的按钮...(查看,编辑,上线,下线)是怎么插入进去的 3: 管理操作(查看,编辑,上线,下线)按钮的状态显示 4: 表格的分页数据展示 5: 表格的横向拖拽实现 操作按钮状态 它的状态是根据后端返回的具体status...下线按钮置灰 2: "待上线",即编辑状态,上线,下线按钮置灰 3: "已上线",即上线按钮置灰,查看按钮隐藏 100: "已结束,查看按钮显示,上下线按钮置灰 具体内容,代码就是最好的解释哈 具体实例效果(拖拽行...) 点击文末左下方阅读原文即可体验 https://coder.itclan.cn/fontend/css/business-col-draw/ 行拖拽的具体实现 这里的拖拽主要借用的是sortablejs.../tableColist.js"; // 表格表头配置数据 import tableComp from ".

3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    1小时搞定卡片拖拽、自动排列交换位置、拖拽数据存取

    这是这次系列文章的第一篇,我自己封装了一个用vue实现的拖拽排列卡片组件,并且发布到npm,详细地记录下来了整体制作过程。...,并且其他卡片根据拖动的位置自动顺移,位置数据实时更新 拖动的时候可使用鼠标滚动 卡片根据数据生成,所有参数和内容都是可以自定义的,方便应用于不同场景 不同操作的事件都可获取到,拖动后的位置数据会实时更新...下载carddragger npm install carddragger 复制代码 全局安装 在你vue项目的入口js文件中使用,vue-cli生成的项目一般为main.js文件 import {installCardDragger...,是卡片需要交换的位置号码 第三个参数originItem,是卡片交换完成后的数据 finishDrag 事件作用: 拖拽完成松开鼠标后,触发此事件 事件参数: swicthPosition(oldPositon...,newPositon,originItem) 第一个参数oldPositon,是卡片原来的位置号码 第二个参数newPositon,是卡片需要交换的位置号码 第三个参数originItem,是卡片交换完成后的数据

    4.1K21

    使用原生方式开发Vue项目的一次体验

    背景 上周末原本打算去找朋友玩,但是另外一个朋友需要我帮他写一个表格。能够支持拖拽表头进行列排序。同时这个需要放到JavaWeb的项目里去运行。.../components/vue-comp.js"> vue-comp.js是自定义的组件。 拖拽部分还是直接使用拖拽api即可。...交换表头位置 交换表头位置,本质上是将column这个数组的两个元素交换位置。...,例如:vm.items.length = newLength 我们需要使用vue.set方法实现位置交换的功能。...并且这个过程帮助强换了Vue.component及拖拽API的细节。 状态管理的内容这个表格没有遇到,容我再思考一下。 同时感觉这个开发方式可以应用到比较旧的项目中,比如比较旧的JavaWeb项目。

    98320

    这个Element table 上下移需求不简单

    思路梳理 抛开业务复杂度,只分析这一小部分的上下移功能技术层的需求实现思路,上下移功能分为两种操作方式,一种是表格数据行拖动上下移;一种是复选框选中数据后,点击上下移按钮实现表格数据行移动 分析到这里的时候发现需求描述里面对于开发人员来讲...,功能描述不完善 问题1:表格数据行拖动上下移,是单行拖动,还是多行拖动?...表格数据行拖动上下移 表格数据行拖动这个原生实现就不考虑了,时间代价有点高,一般找个 npm 库就行,目前不错的拖拽库有 Sortable.js 官方有 Vue 版 Vue.Draggable ,因为拖动需求比较简单...el-table 中的 row-key 必须设置,否则无法拖拽。...如果只是简单实现一下表格数据行拖拽,读者以后功能开发可以优先考虑 el-table-draggable 这个库, 能够快速实现业务需求, 省下来的时间,摸鱼真爽~ (๑˃̵ᴗ˂̵)ﻭ 表格数据选中点击按钮上下移

    1.5K30

    提升数据可视化:拖拽编辑自动汇总,树形数据表格展示新方式

    而在表格中的树形结构的表示形式如下所示(通过缩进的方式): 那么今天小编就为大家介绍如何实现一个表格中的树形结构。...3.拖拽调整数据层级 对于层级错误的数据(如汉中市应该属于陕西省,而非西安市),用户可以通过拖拽来实现层级的移动,也可以用ctrl shift拖拽来改变数据在同一层级的位置。...通过简单的拖拽操作,用户可以在树形结构中调整、移动各个数据项目的位置。这种直观的交互方式,不仅提高了用户的使用体验,也使得数据编辑变得更加简单、快速。...同时,用户还可以通过拖拽来创建、合并甚至删除数据项目,进一步提升数据管理的灵活性和效率。 此外,示例中表格展示树形数据的新方式还具备自动汇总的功能。...在传统的表格展示方式中,用户需要手动计算和汇总各个数据,这不仅费时费力,还容易产生错误。而通过新的方式,系统可以自动对树形数据进行汇总和计算,将结果实时展示在表格中。

    28510

    Rust web 前端库框架评测,以及和 js 前端库框架的比较

    最初,js-framework-benchmark 这个项目,如同名称含义,仅是评测 js 生态的框架性能的。...添加行到大容量表格:在 10000 行的表格上添加 1000 行的消耗时间(无预热)。 行替换:替换表格中 1000 行的全部内容的消耗时间(5 次预热)。...部分更新:对于有 10000 行的表格,每 10行 更新一次文本的消耗时间(5 次预热)。 行选择:点击某行,让其突出显示,计算响应消耗时间(5 次预热)。...行交换:对于有 1000 行的表格,交换 2 行时的消耗时间(5 次预热)。 行删除:删除 1000 行表格的消耗时间(5 次预热迭代)。...更新内存:对于 1000 行的表格,执行 5 次更新后的内存使用情况。 替换内存:对于 100 行的表格,执行 5 次替换后的内存使用情况。

    6.4K20

    sortablejs插件在el-table中的运用

    sortablejs插件在el-table中的运用 概述需求 有一个Table表格,由于数据是根据自增的ID进行排序显示的,有时了调整顺序会在数据库中直接操作数据表,来达到调整数据顺序的目的,因为为了实现在页面实现较为简单的拖拽排序...create(el, { animation: 150, sort: true, draggable: '.el-table__row', // 设置可拖拽行的类名...举个例子:将第四行移动到第一行,执行的顺序如下: 1、首先根据取得oldIndex=3,取得第四列的id 2、将第四列的Id插入newIndex=0的位置,而后其余的数据一次后排。...create(el, { animation: 150, sort: true, draggable: '.el-table__row', // 设置可拖拽行的类名...create(el, { animation: 150, sort: true, draggable: '.el-table__row', // 设置可拖拽行的类名

    1.3K50

    117.精读《Tableau 探索式模型》

    顺带一提,我们还可以对设置了筛选的字段层系组合拖拽到任意地方使用: 要处理这种场景,我们需要让所有字段都拥有筛选能力,普通字段等于没有筛选条件,我们也可以对一个包含了筛选条件的字段拖拽到任何位置作用。...有,但我们只能手动将度量字段拖拽到筛选器位置进行手动筛选: 如果我们进行图表内的圈选操作,增加的筛选条件一定是按维度来的: 这么理解这一行为:维度是离散的,勾选操作能表达的含义有限,比如勾选折线图的某些点...表格的行与列必须是维度字段,如果拖拽度量字段上去会自动切换为其他图表,再切回来则会把度量字段挪动到 “文本” 标记区域中。...拿折线图来说,一共有 5 个拖拽交互位置,如下图所示: 一般这些区域是用来拖拽度量字段的,所以如果拖拽了维度字段过来,最终会被归类到行列或标记上。...对表格来说,能拖拽的区域是行、列、单元格: 拖拽到行或列于拖拽到字段配置区域的行或列没有区别,拖拽到单元格等于拖拽到文本标记区域。

    2.5K20

    HarmonyOS NEXT 网格元素交换案例

    效果图预览使用说明:进入页面,点击编辑,长按网格元素,执行拖拽操作,拖拽过程中显示此网格元素,拖拽到一定的位置时,会进行网格元素的位置交换。编辑模式下,点击网格元素,此元素会被删除。...onItemDrop在网格元素内停止拖拽时触发。此时执行元素位置的切换功能。...} else if (ind > index && ind % COLUMN_COUNT === 0) { item.offsetX = itemAreaWidth * 4; // 位置偏移到上一行的最后一列...,onItemDragStart以及onItemDrop来完成元素的交换功能,supportAnimation设置为true,支持在拖拽时显示动画效果。...onItemDragStart函数中返回目标自定义组件,可以在拖拽过程中显示。onItemDrop函数执行最后网格元素的交换。

    9720

    国内市场上的BI软件,到底有啥区别

    所有BI软件都支持,本质上也就是对着一个数据集做个分组统计的交叉表,以及再把交叉表以图形的形式再呈现出来 比如我们先拖拽出一个表格出来,再把它的行列互换一下查看效果,也就是分析中常见的旋转动作,有的软件是这样的...,把行列里的字段重新拖拽交换位置就可以 或者是这样的,也是拖拽,但是位置对应更直观一些 还有这样的,直接在表格上点击按钮实现的 但不管界面和操作方式有什么不同,最后都殊途同归,实现的功能都是一样的...SQL,然后再把SQL查询出的结果用来做上述的多维分析(即交互式的表格和图形呈现)。...理论上这个界面可以拼出很复杂的SQL,但因为受业务人员的技能限制,结果也只有简单SQL能被拖拽出来,大抵是这样 SELECT D,…, SUM(M), … FROM C WHERE D’=d’ AND...真正找到一个功能全面又开源的,也就不用再忍受了 奔驰宝马没啥区别,但特斯拉是完全不同的 报表不可忽视 一个系统中,BI 和报表往往是共生的,有自助 BI 需求,大都会伴随有固定报表的需求,这就需要有一个固定报表的配套解决方案才行

    34640
    领券