Vue3.5 + Element-Plus 二次封装 el-table、el-form、el-descriptions

超级组件 基于 Vue3.5 + Element-Plus 最新版二次封装了 el-tableel-formel-descriptions 等常用组件,核心理念是通过「配置项(JSON)」来驱动页面的生成,无需编写大量的标签。

超级组件有如下组件:

  • ProTable 超级表格:基于 el-table 封装
  • ProForm 超级表单:基于 el-form 封装
  • ProFormGroup 分组表单:基于 ProForm 封装
  • ProFormDialog 弹框表单:基于 ProFormProDialog 封装
  • ProFormDrawer 抽屉表单:基于 ProFormProDrawer 封装
  • ProFormSteps 步骤表单组件:基于 ProFormel-steps 封装
  • ProSearch 超级搜索:基于 ProForm 封装
  • ProPage 超级页面组件:基于 ProTableProSearch 封装,可快速构建一个增删改查表格页面
  • ProDescriptions 超级描述列表:基于 el-descriptions 封装
  • ProDialog 超级弹框:基于 el-dialog 封装,支持函数式打开 el-dialog
  • ProDrawer 超级抽屉:基于 el-drwaer 封装,支持函数式打开 el-drwaer

在线预览

超级组件并不是作为单独的 NPM 包安装,而是作为独立组件运行在 Teek Design Vue3 项目里,因此可以在项目链接可以查看简单的 Demo 和预览超级组件的代码。

大家可以将超级组件复制到任意 Vue3 + Element-Plus 的项目里使用。

Teek Design Vue3 的文档链接里,超级组件有更详细的 Demo 示例和配置项说明。

Git 仓库 (欢迎 Star ⭐⭐⭐)

Github:github.com/Kele-Bingta...

Gitee:gitee.com/kele-bingta...

诞生

超级组件最开始只有超级表格,而超级表格最初来源于掘金的一篇 Vue3.2 + Element-Plus 二次封装 el-table(Pro 版 🚀🚀),在评论区也可以看到我的评论(😊),后逐步完善,衍生了超级表单和超级搜索等组件。

当时超级组件仿照最初的超级表格,使用 tsx 编写,如今已经全部使用 setup 模板风格重构。

在重构的过程中,我参考了 plus-pro-components 的设计思路,添加了基于超级表单衍生的分组表单,弹框表单等组件。

使用示例

这里仅列举常用的几个超级组件,更多的超级组件用法请看上方的在线预览链接。

超级表格

超级组件分为 4 个模块:

  1. 表格数据操作区域
  2. 表格功能按钮区域
  3. 表格主体区域
  4. 表格分页区域

通过传入 columnsdata 即可快速构建一个表格:

效果:

超级表单

传入配置项 columns 即可构建一个表单:

效果:

超级页面

超级页面基于超级表格和超级搜索组成。超级页面的 columns 在超级表格的 columns 基础上额外添加了 search 配置项,其他用法与超级表格的 columns 保持一致。

效果:

超级描述列表

传入配置项 columns 即可构建一个描述列表:

效果:

超级描述列表内置超级表单,可以通过传入 editable 来开启编辑功能。

超级弹框

超级弹框并没有对 el-dialog 过渡封装,仅仅添加了支持切换全屏的按钮。

兼容 ElementPlus 组件所有功能

超级组件的设计思路是:在完全不影响 ElementPlus 组件的所有属性、事件、插槽前提下进行拓展,你可以通过 columns 传入 ElementPlus 组件自带的任意功能。

相关推荐
Bs_MoneyMagnet4 小时前
基于springboot+vue的滑雪场票务与装备租赁系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
AlienZHOU8 小时前
AI Coding 时代下,我的技术面试实践分享
前端·后端·面试
Captaincc11 小时前
AI用量v0.1.11更新发布 新增 jusage doctor 诊断指令 托盘展示token 和余额 新增 AutoClaw 支持
前端·后端·vibecoding
计算机魔术师13 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen13 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
IT_陈寒13 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow14 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端
竹林81814 小时前
OmniPic Studio v3.2.1 核心技术架构与全平台发版解析文档
前端·浏览器
JamesZhang8007814 小时前
页面内存只涨不跌? 一次泄漏排查, 牵出 WeakMap 的诞生
前端
Z小明14 小时前
第 6 章 组件进阶
前端·vue.js