vuejs2.0使用Sortable.js实现的拖拽功能
来源:互联网 发布:淘宝c店可以卖吃的吗? 编辑:程序博客网 时间:2024/05/19 22:44
简介
http://www.cnblogs.com/moqiutao/p/6423754.html在使用vue1.x之前的版本的时候,页面中的拖拽功能,我在项目中是直接用的jQuery ui中的sortable.js,只是在拖拽完成后,在update的回调函数中又重新排序了存放数据的数组。但是当把vue升级到2.0以上后发现拖拽功能失效了,于是使用了下面代码。
该案例主要是在用于vuejs2.0中实现的拖拽功能,用到的的js有Sortable.js,vuedraggable.js,当然还有vue.min.js,提供的案例使用的require.js加载。
实现效果
实现后的效果如图所示:
html主要代码
<draggable :list="list2" :move="getdata" @update="datadragEnd" :options="{animation: 300,handle:'.dargDiv'}"> <transition-group name="list-complete" > <div v-for="element in list2" :key="element.it.name" class="list-complete-item"> <div class="styleclass dargDiv">{{element.id}}</div> <div class="styleclass">{{element.it.name}}</div> </div> </transition-group> </draggable>
css代码
body{ font-family:'微软雅黑'}[v-cloak]{ display:none;}
js代码
require.config({ urlArgs: "ver=1.0_0", paths:{ "vue":'vue.min2', "sortablejs":'Sortable', "vuedraggable":'vuedraggable' }, shim:{ 'vue':{ exports:'vue' } }}),require(['vue','vuedraggable'],function(Vue,draggable){ Vue.component('draggable', draggable); new Vue({ el: '#example', data: { list2:[ {id:"id1",it:{name:'bbbb'}}, {id:"id2",it:{name:'2222'}}, {id:"id3",it:{name:'3333'}}, {id:"id4",it:{name:'4444'}} ] }, methods:{ getdata: function(evt){ console.log(evt.draggedContext.element.id); }, datadragEnd:function(evt){ console.log('拖动前的索引:'+evt.oldIndex); console.log('拖动后的索引:'+evt.newIndex); } } })})
里面的可配置的很多细节请参考参考地址,这里不做详细介绍。
页面展示地址:https://hxlmqtily1314.github.io/Vue.Draggable-case/
github地址:https://github.com/hxlmqtily1314/Vue.Draggable-case
参考地址:https://github.com/SortableJS/Vue.Draggable
阅读全文
0 0
- vuejs2.0使用Sortable.js实现的拖拽功能
- vuejs2.0使用Sortable.js实现的拖拽功能
- vue2.0使用Sortable.js实现的拖拽功能
- vue2.0使用Sortable.js实现的拖拽功能
- vuejs2.0运用原生js实现简单的拖拽元素功能
- vuejs2.0运用原生js实现简单的拖拽元素功能
- vuejs2.0实现一个简单的分页
- vuejs2.0实现一个简单的分页
- jqueryUI的sortable实现div拖拽排序
- Sortable 拖拽插件 使用文档
- vueJs2.0穿梭框实现
- jquery-ui的拖拽排序(sortable)
- vuejs2.0使用axios跨域时的一个注意
- jquery sortable实现table拖拽排序,更新时只更新受影响的行
- 用jQuery.ui.sortable实现拖拽排序
- js实现控件的拖拽功能
- sortable图片拖拽插件
- vuejs2.0实现分页组件,使用$emit进行事件监听数据传递
- margin:auto实现绝对定位元素的水平垂直居中
- struct sockaddr与struct sockaddr_in ,struct sockaddr_un的区别和联系
- Linux中rpm命令用法
- 实现自定义相机(camera的使用)
- 非预定义异常
- vuejs2.0使用Sortable.js实现的拖拽功能
- Jquery对当前日期的操作(格式化当前日期)
- 使用mongodb的aggregate实现获取数组最后一个元素
- 语言模型系列之N-Gram、NPLM及Word2vec
- windows定时修改mongo数据库的测试地址
- JQuery alert 不弹框问题
- 当yum命令出现No more mirrors to try 处理方式
- VS解决BEX错误但无法关闭DEP保护的问题
- JavaScript基础(六)- 条件语句