遇到一个功能,在固定的一张图或者说一个框内有一个小图标可以拖拽,并且能拿到他当前位置的坐标,如下图
二维码小图标代码如下
<!-- 拖拽小图标 v-drag:拖拽效果,配置当前元素position: absolute;并配置vue的directives生命周期 -->
<img class="qr_code" :src="src" alt="" v-drag="isDrag" title="模拟二维码" />
<!-- data里面写上数据 isDrag: true, -->
结合拖拽指令使用,与mounted,methods为同级关系
// 拖拽指令
directives: {
//注册指令
drag (el, binding, vnode) {
let dragBox = el; //获取当前元素
// this获取不到,所以要通过传参的方式做出来,是这个指令自带的参数
var _self = vnode.context;
// 当前元素位置
if (_self.editInfo.coordinatesX != "") {
dragBox.style.left =