ruoyi-plus-vben5添加动态表单epic-designer设计器(一)

如果你也需要一个动态表单设计,可以使用

先看效果:

使用的Admin框架  ruoyi-plus-vben5: 基于vben最新版本v5 & ant-design-vue 的 RuoYi-Vue-Plus 前端项目

使用的设计器

epic-designer: vue3 版本的k-form-design

使用方法:

我并没有采用全局挂载,全局挂载存在不特定的样式冲突,所以我使用局部方式

1.首先在你的 package.json 中增加 epic-designer,执行 pnpm install 

2.创建一个form-designer.vue

<script setup lang="ts">
import { EDesigner } from 'epic-designer';
import { setupAntd } from 'epic-designer/dist/ui/antd';
// 表单设计器使用Antd UI
setupAntd();
</script>
<template>
  <div class="designer-page-height">
    <EDesigner :hidden-header="false" :form-mode="false" title="">
      <template #header-prefix>
        <div>尘墨测试的表单</div>
      </template>
    </EDesigner>
  </div>
</template>
<style>
@import 'epic-designer/dist/style.css';
.epic-header-container {
  position: fixed;
  width: 100%;
  z-index: 1;
  border-top: 0;
  border-bottom: 1px solid var(--epic-border-color);
}
.epic-split-view-container {
  margin-top: 42px;
}
.designer-page-height {
  height: calc(100vh - 88px);
}
</style>

3.新增一个菜单,点击菜单,就可以看到我第一张图的效果

实际使用,根据业务需求去初始化 设计器 按文档操作吧  点击保存按钮,存json到数据库自行设计

4.滚动条控制,布局微调,让高度更符合页面

效果:

代码样式如下:

<style lang="scss">
@import 'epic-designer/dist/style.css';
.designer-page-height {
  height: calc(100vh - 88px);
}
.epic-component-view > :nth-child(2) {
  display: flex;
  flex-direction: column;
}

.epic-component-view .epic-tabs-box {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  padding: 5px 10px;
  width: inherit;
  height: auto;
  .epic-tab {
    width: 33.33%;
    margin-bottom: 0px;
  }
}

#canvasContainer .epic-edit-range {
  border-radius: 20px;
  box-shadow: 0 0 0 10px black;
  .box-border {
    border-radius: 20px;
  }
}

.epic-right-sidebar {
  .epic-breadcrumb {
    position: fixed;
    width: inherit;
    background: #ffffff;
    z-index: 99;
  }
  .epic-actions-container {
    position: fixed;
    width: inherit;
    background: #ffffff;
    margin-top: 40px;
    z-index: 98;
  }
  .epic-sidebar-content {
    margin-top: 80px;
  }
}
</style>

### RuoYi-Plus Vben5 代码生成器使用方法 #### 背景概述 RuoYi-Plus 是基于 Spring Boot 和 Vue 的快速开发平台,支持多种数据库环境[^3]。其前端部分采用了 Vben Admin 框架作为 UI 层实现[^1]。 #### 项目目录结构简介 以下是项目的典型目录结构及其说明: - **ruoyi-common/** 存放通用工具类和公共配置文件。 - **ruoyi-system/** 后台管理系统的主体模块,包含用户、角色、菜单等功能逻辑。 - **ruoyi-generator/** 自动化代码生成功能的核心模块,提供表单设计界面以及模板渲染机制来动态生成 CRUD 接口和服务层代码。 - **ruoyi-ui/** 前端工程所在位置,集成了 Element Plus/Vben Admin 组件库用于构建现代化 Web 应用程序界面[^4]。 --- #### 使用方法详解 ##### 配置数据源 进入 `application.yml` 文件设置目标数据库连接字符串及相关驱动信息: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC username: root password: 123456 ``` ##### 创建实体对象映射关系 通过 MyBatis Generator 自动生成 DAO 层接口与 Mapper XML 映射文件或者手动定义 JPA 注解形式完成持久化操作绑定。 ##### 设计表格字段属性 登录到后台管理系统后切换至【代码生成】选项卡页面,在线编辑待处理的数据模型描述详情并保存修改结果。 ##### 执行导出动作 点击对应记录右侧的操作按钮触发下载流程即可获取完整的 Java 类型声明脚本连同 HTML 片段等内容资源包: ```javascript handleExport() { this.download('system/generator/export', { tableName: 'your_table_name' }, `${new Date().getTime()}_template.zip`); } ``` 上述函数片段展示了如何发起次异步请求向服务器索取压缩后的素材集合实例演示过程。 --- #### 示例代码展示 以下是个简单的例子用来阐明整个工作流的具体实践方式: 假设我们有个名为 `employee` 的员工基本信息登记表,则可以按照下面步骤来进行自动化编程任务尝试体验下吧! ###### 步骤:初始化基础框架依赖项安装完毕之后启动服务进程监听指定端口号等待客户端访问进来; ###### 步骤二:利用图形化交互面板填写必要参数值比如所属分组名称叫做 "人力资源部" 等等细节要素构成最终版 SQL DDL 定义语句存入元存储区域当中去; ###### 步骤三:最后按下确认键位组合 Ctrl+S 就能够看到预期成果啦——即份标准符合企业内部编码规范要求的新建 EmployeeController.java 控制单元样板文件呈现在眼前咯! ```java @RestController @RequestMapping("/api/v1/employees") public class EmployeeController { @Autowired private IEmployeeService employeeService; @GetMapping("/{id}") public ResponseEntity<Employee> getEmployeeById(@PathVariable Long id){ Optional<Employee> optional = employeeService.findById(id); return optional.map(ResponseEntity::ok).orElseGet(() -> ResponseEntity.notFound().build()); } ... } ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值