您的位置:首页 > Web前端 > Vue.js

vue - 实现图片拖拽效果

2019-07-31 17:02 357 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/LiaoFengJi/article/details/97934600

1.安装依赖包

npm install awe-dnd --save

2.main.js文件(全局)引入

// 拖拽
import VueDND from 'awe-dnd';
Vue.use(VueDND);

3.在使用图片拖拽的页面对应的循环的标签加上以下代码:

v-dragging="{ item: item, list: masterImgList, group: 'index' }"

4.在mounted中加上以下代码

mounted(){
this.$dragging.$on('dragged', (val) => {
console.log(val);
})
this.$dragging.$on('dragend', (val) => {
//此处是拖动完成后鼠标松开时触发的事件
})
}

使用例子:

<li
class="showpc"
v-for="(item,index) in masterImgList"
:key="index"
v-dragging="{ item: item, list: masterImgList, group: 'index' }"
:style="'height:'+heighting+'px'"
@click="checkItem(index)"
>
<div class="mask" v-if="index==0"></div>
<div :class="{active:index==isActive}" v-show="item!==''">
<div class="picture">
<img :src="item" :style="'height:'+heighting+'px'" alt @click="getIndex(item)">
</div>
</div>
</li>
mounted() {
// 拖拽图片
this.$dragging.$on("dragged", val => {});
this.$dragging.$on("dragend", val => {
//此处是拖动完成后鼠标松开时触发的事件
});
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: