最近在优化一个vue的博客系统,想实现文章列表处的文章拖拽功能。就试了一下awe-dnd vue插件,觉得还挺好用的。

安装

npm install awe-dnd --save

使用

在main.js中,通过Vue.use引入

import VueDND from 'awe-dnd'
Vue.use(VueDND)

在vue文件中的使用

<template>
<div class="color-list">
<div
class="color-item"
v-for="color in colors" v-dragging="{ item: color, list: colors, group: 'color', otherData: otherData }"
:key="color.text"
>{{color.text}}</div>
</div>
</template>
<script>
export default {
data () {
return {
colors: [{
text: "Aquamarine"
}, {
text: "Hotpink"
}, {
text: "Gold"
}, {
text: "Crimson"
}, {
text: "Blueviolet"
}, {
text: "Lightblue"
}, {
text: "Cornflowerblue"
}, {
text: "Skyblue"
}, {
text: "Burlywood"
}]
}
},
mounted () {
this.$dragging.$on('dragged', ({ value }) => {
console.log(value.item)
console.log(value.list)
console.log(value.otherData)
})
this.$dragging.$on('dragend', () => { })
}
}
</script>

组件参数

名称 类型 默认值 说明
item Object - 每一个可拖拽的对象
list Array - 可拖拽对象的数组
group String - 这是一个dragging list的unique key

拖拽完成之后,需要把新的数组顺序提交到后台,创建一个sort_order字段保存顺序。

参考: 可拖动排序的vue组件 , github

作者:real_ting
链接:https://www.jianshu.com/p/7afcf8a7af75
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

最新文章

  1. FluentValidation
  2. README
  3. tiledmap2
  4. (实用篇)PHP ftp上传文件操作类
  5. bochs安装一系列问题
  6. 用JavaScript刷新框架子页面的七种方法
  7. Project Management - 2) Estimate Your Work
  8. SQL从入门到基础 - 01 数据库开发及ADO.Net
  9. js类方法,对象方法,原型的理解(转)
  10. kafka命令使用
  11. leetcode python 011
  12. ubuntu samba共享后windows读写文件都是以nogroup问题
  13. Oracle EBS AP 供应商API
  14. 使 Finder 显示 文件夹路径
  15. RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange
  16. C++使用ocilib访问oracle数据库
  17. daD
  18. Codeforces Round #495 (Div. 2) Sonya and Matrix
  19. 【题解】洛谷9月月赛加时赛 —— Never&#183;island
  20. vue脚手架的安装和使用

热门文章

  1. Mybatis中$和#取数据的区别
  2. Vultr账号被锁定的几个常见原因
  3. 日文NLP分词系统
  4. tf-idf 词条权重计算
  5. 佳佳的 Fibonacci
  6. 【重磅来袭】阿里小程序IDE上线8大功能
  7. thinkphp 上传安全
  8. NX二次开发-算法篇-冒泡排序(例子:遍历所有点并排序)
  9. 使用RAS+AES对接口数据加解密
  10. linux网络速率监控