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 组件自带的任意功能。

相关推荐
CappuccinoRose7 小时前
模块化体系
前端·import·export·es modules
AIDANHANG7 小时前
放开靠时间戳对日志前先核请求ID跨服务传播与采样关联
前端·人工智能
半生过往9 小时前
前端学 Java 课程笔记
java·前端·笔记
广州华水科技9 小时前
2026年单北斗GNSS变形监测系统推荐,破解水库安全监测难题
前端
独爱香菜10 小时前
Next.js 15 + Cloudflare Workers 实战:零中间件多语言 SEO 站点架构
前端
计算机魔术师10 小时前
DeepSeek、Qwen3比肩GPT-5,本地跑大模型的时代来了
前端
xcyxiner10 小时前
flutter wsl2安装记录(使用宿主机虚拟机)
前端·flutter
前端炒粉10 小时前
长会话虚拟滚动与渲染优化
前端·javascript·vue.js
花归去11 小时前
ant的a-table更改表格的高度
前端·javascript·html
sibylyue11 小时前
基于 Vben Admin 框架的 Vue 3 前端项目配置文件及常用命令
前端·javascript·vue.js