vue.draggable实现表格拖拽排序效果


Posted in Javascript onDecember 01, 2018

本文实例为大家分享了vue.draggable实现表格拖拽排序效果展示的具体代码,供大家参考,具体内容如下

主要使用vuedraggable和sortablejs两个组件。

1、安装组件

npm install vuedraggable
npm install sortablejs

2、引入组件

import draggable from 'vuedraggable';
import Sortable from 'sortablejs';

export default {
  components: {
    draggable,
    Sortable
  },
  ....

3、HTML

我的例子是给表格排序,项目整体使用的是ivew,所以用了ivew的栅格来画表格

<Row class="draggableTable-head">
  <Col span="1">序号</Col>
  <Col span="2">商品条码</Col>
  <Col span="3">商品名称</Col>
  <Col span="1">单位</Col>
</Row>
<draggable class="list-group" v-model="tableData" :options="{draggable:'.rows'}"
  :move="getdata" @update="datadragEnd">
  <Row class="rows" v-for="(item,index) in tableData" :key="index">
    <Col span="1">
      <div class="cell">{{index+1}}</div>
    </Col>
    <Col span="2">
      <div class="cell">{{item.barCode}}</div>
    </Col>
    <Col span="2">
      <div class="cell">{{item.name}}</div>
    </Col>
    <Col span="2">
      <div class="cell">{{item.unit}}</div>
    </Col>
  </Row>
</draggable>

options中draggable的值是拖动的class。一开始怎么都不能拖动,加上这个就可以了。

4、两个方法

move:拖动中
update:拖拽结束

getdata (data) {
  // console.log('getdata方法');
},
datadragEnd (evt) {
  // console.log('datadragEnd方法');
  console.log('拖动前的索引 :' + evt.oldIndex)
  console.log('拖动后的索引 :' + evt.newIndex)
}

表格的处理逻辑是:
1、当前行的id和排序号作为参数,调用后台更改顺序的方法
2、不论调用成功与否,都重新渲染表格数据

【注意】如果有分页,那么传给后台的排序号就要再加上之前的条数,即(页码-1)*每页条数

Vue.Draggable作者的git地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
IE iframe的onload方法分析小结
Jan 07 Javascript
Javascript Request获取请求参数如何实现
Nov 28 Javascript
js左右弹性滚动对联广告代码分享
Feb 19 Javascript
JavaScript中操作字符串小结
May 04 Javascript
JavaScript简单遍历DOM对象所有属性的实现方法
Oct 21 Javascript
详解Javascript继承的实现
Mar 25 Javascript
JS功能代码集锦
May 04 Javascript
使用Script元素发送JSONP请求的方法
Jun 12 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
Jan 20 Javascript
从Vuex中取出数组赋值给新的数组,新数组push时报错的解决方法
Sep 18 Javascript
VUE 组件转换为微信小程序组件的方法
Nov 06 Javascript
javascript实现商品图片放大镜
Nov 28 Javascript
vuedraggable+element ui实现页面控件拖拽排序效果
Jul 29 #Javascript
Vue组件Draggable实现拖拽功能
Dec 01 #Javascript
BootStrap modal实现拖拽功能
Dec 01 #Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
Aug 21 #Javascript
BootStrap table实现表格行拖拽效果
Dec 01 #Javascript
一次Webpack配置文件的分离实战记录
Nov 30 #Javascript
基于Vue组件化的日期联动选择器功能的实现代码
Nov 30 #Javascript
You might like
php mysql 判断update之后是否更新了的方法
2012/01/10 PHP
比较好用的PHP防注入漏洞过滤函数代码
2012/04/11 PHP
php set_time_limit()函数的使用详解
2013/06/05 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
js jquery做的图片连续滚动代码
2008/01/06 Javascript
javascript 打印页面代码
2009/03/24 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
js去空格技巧分别去字符串前后、左右空格
2013/10/21 Javascript
js给页面加style无效果的解决方法
2014/01/20 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
利用jquery写的左右轮播图特效
2014/02/12 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
JS实现控制表格内指定单元格内容对齐的方法
2015/03/30 Javascript
贴近用户体验的Jquery日期、时间选择插件
2015/08/19 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
2015/09/01 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
JS控制FileUpload的上传文件类型实例代码
2016/10/07 Javascript
js实现登录验证码
2016/12/22 Javascript
JS实现数组去重及数组内对象去重功能示例
2019/02/02 Javascript
微信小程序:数据存储、传值、取值详解
2019/05/07 Javascript
JavaScript的Proxy可以做哪些有意思的事儿
2019/06/15 Javascript
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
2019/08/20 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
浅谈Python中带_的变量或函数命名
2017/12/04 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
对python 合并 累加两个dict的实例详解
2019/01/21 Python
python小程序之4名牌手洗牌发牌问题解析
2020/05/15 Python
耐克中国官方商城:Nike中国
2018/10/18 全球购物
Agoda中文官网:安可达(低价预订全球酒店)
2021/01/18 全球购物
测控技术与仪器个人求职信范文
2013/12/30 职场文书
股权投资意向书
2014/04/01 职场文书
2015年小班保育员工作总结
2015/05/27 职场文书
母亲去世追悼词
2015/06/23 职场文书
初中化学教学反思
2016/02/22 职场文书