一、使用原生js实现拖拽
点击打开视频讲解更加详细
Lazyload 按住拖动
登录后复制
二、VUe使用js实现拖拽穿梭框
拖拽穿梭框
{{ item.label }} X{{ item.label }} X
登录后复制
效果图:
(资料图)
三、Vue 拖拽组件 vuedraggable
vuedraggable
是标准的组件式封装,并且将可拖动元素放进了 transition-group
上面,过渡动画都比较好。【相关推荐:vuejs视频教程】
使用方式:
yarn add vuedraggableimport 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 --saveyarn add awe-and
登录后复制
main.js
import VueDND from "awe-dnd"Vue.use(VueDND)
登录后复制
案例:
{{ color.text }}
登录后复制
若对您有帮助,请点击跳转到B站一键三连哦!感谢支持!!!
(学习视频分享:web前端开发、编程基础视频)
以上就是Vue如何实现拖拽穿梭框功能?四种方式分享(附代码)的详细内容,更多请关注php中文网其它相关文章!