Vue项目中如何实现拖拽穿梭框功能?下面本篇文章给大家分享Vue实现拖拽穿梭框功能四种方式,希望对大家有所帮助!
前端(vue)入门到精通课程:进入学习
API 文档、设计、调试、自动化测试一体化协作工具:点击使用
一、使用原生js实现拖拽
点击打开视频讲解更加详细
Lazyload
按住拖动
登录后复制
二、VUe使用js实现拖拽穿梭框
拖拽穿梭框
{{ item.label }}
{{ item.label }}
登录后复制效果图:
三、Vue 拖拽组件 vuedraggable
vuedraggable
是标准的组件式封装,并且将可拖动元素放进了 transition-group
上面,过渡动画都比较好。【相关推荐:vuejs视频教程】
使用方式:
yarn add vuedraggable
import vuedraggable from 'vuedraggable';
登录后复制
在使用的时候,可以通过 v-model 来双向绑定本地 data,如果需要更新或者是触发父组件监听的事件,可以在 updated() 中去 emit。
案例:
{{ drag ? "拖拽中" : "拖拽停止" }}
{{ element.name }}
{{ color.text }}
登录后复制
四、Awe-dnd指令封装
vue-dragging 的 npm 包的名字是 awe-dnd ,并不是 vue-dragging,这个库的特点是封装了 v-dragging 全局指令,然后通过全局指令去数据绑定等。
相比及 vuedraggable 来说, awe-dnd 是没有双向绑定(这里没有双向绑定并不是很严谨,准确的来说没有暴露双向绑定的方式),因此提供了事件,在拖拽结束的时候用来更新列表(不需要手动更新列表,其实内部是实现了双向绑定的)或者是去触发父组件监听的事件。
安装依赖:
npm install awe-dnd --save
yarn add awe-and
登录后复制
main.js
import VueDND from 'awe-dnd'
Vue.use(VueDND)
登录后复制
案例:
{{ color.text }}
登录后复制
若对您有帮助,请点击跳转到B站一键三连哦!感谢支持!!!
(学习视频分享:web前端开发、编程基础视频)
以上就是Vue如何实现拖拽穿梭框功能?四种方式分享(附代码)的详细内容,转载自php中文网
发表评论 取消回复