背景

需求:拖拽元素,vue.js项目。

解决方法

用了自定义指令的方法,参考:参考链接
需要注意下面这个。
image.png
原意是通过$emit给父组件传参,但是$emit只能在Vue自定义组件中使用,这不是组件,vnode只是一个DOM元素。在常规的DOM元素中是用.dispath event发送DOM事件,应该改为如下:

vnode.elm.dispatchEvent(new CustomEvent(eventName, {}));
// 或是vnode.data.on.eventName()

喆喆
74 声望7 粉丝

小白一枚!!!