您现在的位置是:首页 > 技术教程 正文

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

  1. <template>
  2. <div>
  3. <div class="">
  4. <draggable
  5. v-model="applyList"
  6. :group="{ name: 'piece', pull: 'clone', put: true }"
  7. animation="100"
  8. :sort="false"
  9. :clone="addComponent"//左边应用组数据
  10. >
  11. <div class="employ" v-for="item in applyList" :key="item.id">
  12. <span class="nr">{{ item.name }}span>
  13. div>
  14. draggable>
  15. div>
  16. <div class="">
  17. <draggable
  18. v-model="applyList"
  19. :group="{ name: 'piece', pull: 'clone', put: true }"
  20. animation="100"
  21. :sort="false"
  22. :clone="addComponent"//左边应用数据
  23. >
  24. <div class="employ" v-for="item in applyList" :key="item.id">
  25. <span class="nr">{{ item.name }}span>
  26. div>
  27. draggable>
  28. div>
  29. <div>
  30. <draggable v-model="onList" group="piece" animation="100">//右边空数组
  31. <transition-group :style="style">
  32. <div class="myEmploy" v-for="item in onList" :key="item.id">
  33. <span class="zjNr"
  34. >{{ item.name }}
  35. <div class="ddd">
  36. <draggable
  37. v-model="item.myList"//父级空数组
  38. :group="{
  39. name: 'theChild',
  40. pull: 'clone',
  41. }"
  42. animation="100"
  43. :clone="cloneComponent"
  44. :sort="true"
  45. >
  46. <transition-group :style="style">
  47. <div class="caTion" :key="item.id">
  48. <div
  49. class="suBAppLicaTion"
  50. v-for="(it, idx) in item.myList"//子级空数组
  51. :key="idx"
  52. >
  53. <i
  54. class="el-icon-circle-close myDelete"
  55. @click="onDelete(idx)"
  56. >i>
  57. <img :src="it.url" alt="" />
  58. <span class="ziNr">{{ it.name }}span>
  59. div>
  60. div>
  61. transition-group>
  62. draggable>
  63. div>
  64. span>
  65. div>
  66. transition-group>
  67. draggable>
  68. 从左侧拖入或点选组件进行应用组合
  69. div>
  70. div>
  71. template>

js:

以上就是这个插件在项目中使用的流程 如果有不懂可以私信我

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索