vue使用vuedraggable拖拽组件,进行组件生成
admin 阅读: 2024-04-01
后台-插件-广告管理-内容页头部广告(手机) |
最近写项目使用到了vuedraggable这个插件,进行组件生成,由于第一次使用,就上网搜相关文章,结果网上基本上都是上下拖拽之类的,没有找到自己想要的结果,然后就根据自己的需求结合相关文档进行了开发
开发完后大概结果视频如下:
vuedraggable拖拽生成组件
静态效果如下:
第一步:下载依赖:
npm i -S vuedraggable第二步:在项目中引入:
import draggable from "vuedraggable";第三步查看相关属性和方法:
属性:
事件:
属性和事件使用方法请详看 官网:
中文(国人翻译,可能更新不及时):vue.draggable中文文档 - itxst.com
英文:https://www.itxst.com/vue-draggable/tutorial.html
第四步:在代码里使用 html
- <template>
- <div>
- <div class="">
- <draggable
- v-model="applyList"
- :group="{ name: 'piece', pull: 'clone', put: true }"
- animation="100"
- :sort="false"
- :clone="addComponent"//左边应用组数据
- >
- <div class="employ" v-for="item in applyList" :key="item.id">
- <span class="nr">{{ item.name }}span>
- div>
- draggable>
- div>
- <div class="">
- <draggable
- v-model="applyList"
- :group="{ name: 'piece', pull: 'clone', put: true }"
- animation="100"
- :sort="false"
- :clone="addComponent"//左边应用数据
- >
- <div class="employ" v-for="item in applyList" :key="item.id">
- <span class="nr">{{ item.name }}span>
- div>
- draggable>
- div>
- <div>
- <draggable v-model="onList" group="piece" animation="100">//右边空数组
- <transition-group :style="style">
- <div class="myEmploy" v-for="item in onList" :key="item.id">
- <span class="zjNr"
- >{{ item.name }}
- <div class="ddd">
- <draggable
- v-model="item.myList"//父级空数组
- :group="{
- name: 'theChild',
- pull: 'clone',
- }"
- animation="100"
- :clone="cloneComponent"
- :sort="true"
- >
- <transition-group :style="style">
- <div class="caTion" :key="item.id">
- <div
- class="suBAppLicaTion"
- v-for="(it, idx) in item.myList"//子级空数组
- :key="idx"
- >
- <i
- class="el-icon-circle-close myDelete"
- @click="onDelete(idx)"
- >i>
- <img :src="it.url" alt="" />
- <span class="ziNr">{{ it.name }}span>
- div>
- div>
- transition-group>
- draggable>
- div>
- span>
- div>
- transition-group>
- draggable>
- 从左侧拖入或点选组件进行应用组合
- div>
- div>
- template>
js:
以上就是这个插件在项目中使用的流程 如果有不懂可以私信我
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
在线投稿:投稿 站长QQ:1888636
后台-插件-广告管理-内容页尾部广告(手机) |