vuedraggable实现一个简单的商城拖拽设计工具

接到一个商城拖拽的需求,为了方便大家不用重复造轮子,对于一些要求简单的可配置需求,可以快速实现功能,只需要写业务代码,现在把代码分享出来,欢迎大家star,大家觉得有可以完善的地方也可以代码提交给我

技术栈:vuedraggable、element-plus

simple-drag-mall: 一个简单的商城拖拽设计工具 (gitee.com)

模板参数化配置

通过参数配置生成模板,存在children字段证明存在子项目,子项目参数配置在childrenSource中,模板参数配置在params中

{ 复制代码
  templateId: '1',
  componentName: 'Banner',
  name: '轮播图',
  params: {
    bannerSize: '',
  },
  childrenSource: {
    imageUrl: '',
    routeType: '',
  },
  children: [],
}

根据参数动态生成表单

通过解析params和children中的参数,动态生成表单,FirmList.vue中实现了常用的input、upload、select等,可根据业务自己调整,比如'productList'

css 复制代码
title: {
  type: 'input',
  name: '标题'
},
imageUrl: {
  type: 'upload',
  name: '图片'
},
bannerSize: {
  type: 'select',
  name: '图片尺寸',
  enum: [
    {
      label: '750X200',
      value: '200'
    },
    {
      label: '750X375',
      value: '375'
    },
    {
      label: '750X400',
      value: '400'
    },
  ]
},
productList: {
  type: 'productList',
  name: '商品列表'
}

截图

总结

通过这套简单的配置工具,我们就可以实现商城设计功能,代码实现一些基础的东西,方便大家不用重复开发,欢迎指正和star

相关推荐
wordbaby2 分钟前
前端进阶:小程序 Canvas 2D 终极指北 — 给图片优雅添加水印
前端·canvas
树上有只程序猿5 分钟前
OpenClaw虽香,但不是人人都养得起“小龙虾
前端·openai
SuperEugene22 分钟前
Vue3 + Element Plus 全局 Message、Notification 封装与规范|Vue生态精选
前端·javascript·vue.js
掘金安东尼24 分钟前
活动落地页效率翻倍:RollCode 这次更新有点猛
前端·低代码·面试
北冥有鱼其名为坤24 分钟前
诡异!vite+vue3 项目图片无法显示,我怀疑人生…
前端
FE_winter26 分钟前
OpenClaw Skills 进阶实战:前端开发者的 AI 技能库搭建指南
前端·后端·程序员
wordbaby43 分钟前
小白也能看懂:小程序 Canvas 给图片添加水印的终极指南
前端·canvas
Mapmost43 分钟前
“汛”速响应:流域洪水仿真分析,如何实现淹没过程的精准推演?
前端
梁大虎1 小时前
Electrobun 开发必看:CEF 依赖下载失败?手动解压一招搞定!
前端·javascript·后端
青青家的小灰灰1 小时前
拒绝 Prop Drilling 与隐式耦合:Vue 组件通讯的全景指南与最佳实践
前端·javascript·vue.js