vue draggable组件实现拖拽及点击无效问题的解决
在实现一个移动端项目的时候,根据产品需求,要实现一个既能增加删除又可以拖拽调换位置的效果,然后我使用了draggable组件,然后发现放到手机上的时候苹果(ios)手机可以正常使用,但是鸿蒙系统的手机(例如华为pro40)有些是不可以正常拖拽、增加和删除,只能一开始正常操作两三个,然后后面就怎么点都没有什么反应。通过多次尝试和查找方法,最终找到了解决办法,我在这里总结一下。
一、效果图
二、拖拽及点击无效解决方法
只需要在设置handle属性就可以了,vuedraggable的文档中有说明 options 配置项已经不在使用,所以我们直接将handle单独拿出来使用即可,像这样:handle="'.defaultTypeTag'"
,.defaultTypeTag
是要拖拽的块的类名,要注意的是需要做点击事件的项不能包含在这个类名里面,不然会无法触发点击事件。
三、vuedraggable的使用
这里只贴出html代码,js相关代码逻辑直接根据需求处理即可。
1、安装和引入使用
// 安装
npm install vuedraggable
// 引入使用
import draggable from 'vuedraggable'
2、对应的html代码
<draggable
class="list-group list-group-default"
tag="ul"
v-model="removetTypeList"
:handle="'.defaultTypeTag'"
v-bind="dragOptions"
@start="isDragging = true"
@update="updateDefaultTypeList"
@end="isDragging = false"
>
<transition-group type="transition" name="flip-list">
<li v-for="(v,i) in removetTypeList" :key="i">
<div class="defaultTypeTag">
<img :class="lazy" data-src="v.icon" alt="" class="img">
<p class="p">{{v.classifyName.substring(0,5)}}<span v-if="v.classifyName.length>5">...</span></p>
</div>
<i class="removeTypeList" @click.stop.prevent="handRemoveTypeChange(v,i)"></i>
</li>
</transition-group>
</draggable>
到此这篇关于vue draggable组件实现拖拽及点击无效问题的解决的文章就介绍到这了,更多相关vue draggable拖拽无效内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341