Vue拖拽插件(vuedraggable)
参考文档: vue.draggable disabled 开启和禁用拖动 - itxst.com
效果如下图:
① 安装插件:yarn add vuedraggable
②引入插件并使用:
<template><div class="draggable"><draggablev-model="dragData"group="player"animation="500"delay="0":disabled="false"ghostClass="ghost"chosenClass="chosen"forceFallback@start="onStart"@end="onEnd":move="onMove"><div class="u-player" v-for="(data, index) in dragData" :key="index">{{ data.name || '--'}} : {{ data.num }}</div></draggable></div>
</template>
<script>
import draggable from 'vuedraggable'
export default {name: 'Draggable',components: {draggable},data () {return {dragData: [{name: 'curry',num: 30},{name: 'klay',num: 11},{name: 'kobe',num: 24},{name: 'james',num: 23}, {name: 'leo',num: 36}]}},methods: {onStart (e) { // 开始拖动时触发的事件console.log('start:', e)console.log('拖拽操作前的索引oldIndex:', e.oldIndex)console.log('拖拽完成后的索引newIndex:', e.newIndex)},onEnd (e) { // 拖动完成时触发的事件console.log('end:', e)console.log('拖拽操作前的索引oldIndex:', e.oldIndex)console.log('拖拽完成后的索引newIndex:', e.newIndex)},onMove (e, originalEvent) { // 拖拽move事件回调console.log('move:', e)console.log('originalEvent:', originalEvent)// 不允许拖拽if (e.draggedContext.element.num === 11) return false // false表示阻止,true表示不阻止return true;}}
}
</script>
<style lang="less" scoped>
.draggable {width: 1200px;height: 100vh;margin: 0 auto;.u-player {margin-top: 30px;display: inline-block;color: #0079DD;background: #F0F7FD;font-size: 16px;font-weight: 500;padding: 8px 18px;border-radius: 6px;text-align: center;cursor: move;&:not(:last-child) {margin-right: 16px;}}
}
.chosen { // 选择元素的样式background: #666 !important;color: #fff !important;
}
.ghost { // 目标位置占位符的样式及需要停靠位置的样式background: #1890FF !important;
}
</style>
Vue拖拽插件(vuedraggable)相关推荐
- Vue3使用拖拽插件 - vuedraggable
1. 安装 pnpm i -S vuedraggable@next 2. 导入 import draggable from "vuedraggable"; 3. 基本使用 < ...
- vue3TS+Jsplumb+vuedraggable拖拽插件使用记录
安装拖拽插件 vue3需下载-@next此版本,否则会出现错误 npm i -S vuedraggable@next npm install sortablejs --save //拖拽组件依赖sor ...
- 【组件】前端js拖拽插件 VUE
[组件]前端js拖拽插件 VUE Vue Draggable - Vue 拖拽组件王者 Vue drag resize - 轻量级,无依赖,可缩放 Vue smooth dnd - 简单动效,上下拖拽 ...
- vue 拖拽产生连线_dragUI
dragUI 文档目录 用于UNI可拖拽可视化编程 在线演示 demo地址 一个简单创建hello world 界面的视频,github不会放视频,放在bilibli了 dragUI 演示视频 效果图 ...
- vue拖拽实现app或小程序装修界面
vue拖拽实现app或小程序装修 一.最终效果图 参考引用作者:作者:李白不吃茶v 原作者源代码git地址:大神的源代码 这里是引用 二.需要安装的依赖 安装:vuedraggable 语法:npm ...
- 最好用的 6 款 Vue 拖拽组件库推荐 - 卡拉云
本文首发:<最好用的 6 款 Vue 拖拽组件库推荐 - 卡拉云> Vue 拖拽组件库(drag-and-drop)组件在使用 Vue 框架开发中非常常见的需求,做个内容行排序,拖拽小组件 ...
- 自己封装的vue拖拽组件
自己封装的vue拖拽组件 使用Vue.Draggable实现 Vue.Draggable的基础使用方法可以看看这个哥们的https://blog.csdn.net/zjiang1994/article ...
- vue拖拽排序 组件
vue拖拽排序 组件 npm install vuedraggable -S vue.draggable中文文档 组件代码 <template><div><div cla ...
- sortable 拖拽时互换目标的位置_双端通用型JS拖拽插件的封装与应用
最近工作中遇到一个需求,需要将一个元素从某位置拖动到另一固定位置后执行某一交互行为,具体效果如下: 这个看似简单的需求,然而实现起来却并不那么顺利.我首先想到的是如何通过哪个现有的插件来快速解决这个问 ...
最新文章
- 1127: 第三章:再见,林静!
- 利用Hexo搭建个人博客-博客初始化篇
- c语言 读取一个文件 删除注释,C/C++ 源文件删除注释代码
- 实践案例丨GaussDB网络重传/丢包问题定位总结
- 转 zookeeper启动为什么占用8080端口,修改哪个配置文件可以改变端口?
- KR《C语言》书中的一个Bug
- 认识linux,走进开源世界。
- AutoCAD2020命令提示框信息设置
- android 8187驱动 win7,RTL8187 无线网卡在win7下的驱动问题
- 将C盘里的Users文件夹移动到D盘
- 怎样实现VLAN间通信,三种解决方案,一节课带你掌握
- Consider defining a bean of type问题
- .Net MVC 框架基础知识
- 什么是期权?如何从概念上理解看涨期权/看跌期权?
- 杭州新生每日一问:天天洗头会导致脱发吗
- Windows 上 DeepLab v3+ 训练自己的数据集
- Calendar类常用api
- mac mysql 忘记初始root密码,重置密码
- CAS 票根‘ST-xxxxx‘不符合目标服务问题解决
- 卖家做独立站关心的问题(二)