关于jeecg-boot:JeecgbootVue3-v120-版本正式发布企业级低代码平台

12次阅读

共计 8678 个字符,预计需要花费 22 分钟才能阅读完成。

我的项目介绍

Jeecgboot-Vue3 采纳 Vue3.0、Vite、Ant-Design-Vue、TypeScript 等新技术计划,包含二次封装组件、utils、hooks、动静菜单、权限校验、按钮级别权限管制等性能。JeecgBoot 企业级的低代码平台对应的 vue3 前端版本!

弱小的代码生成器让前后端代码一键生成! JeecgBoot 引领低代码开发模式(OnlineCoding-> 代码生成 -> 手工 MERGE),帮忙解决 Java 我的项目 70% 的反复工作,让开发更多关注业务。既能疾速提高效率,节省成本,同时又不失灵活性

以后版本:v1.2.0 | 2022-06-06

源码下载

Github
  • 前端:https://github.com/jeecgboot/…
  • 后端:https://github.com/jeecgboot/…
Gitee
  • 前端:https://gitee.com/jeecg/jeecg…
  • 后端:https://gitee.com/jeecg/jeecg…

技术文档

  • 开发文档:http://vue3.jeecg.com
  • 官方网站:http://www.jeecg.com
  • 在线演示:http://boot3.jeecg.com
  • 疾速入门:入门视频 | 代码生成
  • QQ 交换群:683903138

降级日志

此版本重点反对 online 表单、online 报表、popup 等新性能,降级修复很多已知 bug、解决首次拜访慢等问题。

降级 sql

-- online 低代码菜单(online 表单、online 报表)INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1455100420297859074', '',' 在线开发 ','/online','layouts/default/index', 1, NULL,'/online/cgform', 0, NULL,'0', 2.00, 0,'ant-design:cloud-outlined', 0, 0, 0, 0, NULL,'admin','2021-11-01 17:12:29','admin','2022-05-11 16:38:26', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1455101470794850305', '1455100420297859074', 'Online 表单开发', '/online/cgform', 'super/online/cgform/index', 1, NULL, NULL, 1, NULL, '0', 1.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-01 17:16:40', 'admin', '2022-04-04 18:36:25', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1457678003102879745', '1455100420297859074', '零碎编码规定', '/system/fillrule', 'system/fillRule/index', 1, NULL, NULL, 1, NULL, '0', 9.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-08 19:54:53', 'admin', '2021-11-18 10:49:40', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1458353686530232321', '1455100420297859074', '零碎校验规定', '/system/checkrule', 'system/checkRule/index', 1, NULL, NULL, 1, NULL, '0', 15.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-10 16:39:48', 'admin', '2021-11-18 10:49:48', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1460888189937176577', '1455100420297859074', 'Online 报表配置', '/online/cgreport', 'super/online/cgreport/index', 1, NULL, NULL, 1, NULL, '0', 2.00, 0, NULL, 1, 0, 0, 0, NULL, 'admin', '2021-11-17 16:31:01', 'admin', '2021-12-08 10:55:32', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1461270075543347202', '1455100420297859074', 'Online 表单视图', '/online/copyform/:code', 'super/online/cgform/CgformCopyList', 1, NULL, NULL, 1, NULL, '0', 99.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-18 17:48:30', NULL, NULL, 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1461291438825558017', '1455100420297859074', 'AUTO 在线报表', '/online/cgreport/:id', 'super/online/cgreport/auto/OnlCgReportList', 1, NULL, NULL, 1, NULL, '0', 2.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-18 19:13:23', 'admin', '2021-11-19 20:16:13', 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1465686870713782273', '1455100420297859074', 'AUTO 在线表单', '/online/cgformList/:id', 'super/online/cgform/auto/default/OnlineAutoList', 1, NULL, NULL, 1, NULL, '0', 5.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2021-11-30 22:19:16', NULL, NULL, 0, 0, NULL, 0);
INSERT INTO `sys_permission` (`id`, `parent_id`, `name`, `url`, `component`, `is_route`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_leaf`, `keep_alive`, `hidden`, `hide_tab`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`) VALUES ('1509417558230999041', '1455100420297859074', 'AUTO 树表单列表', '/online/cgformTreeList/:id', 'super/online/cgform/auto/tree/OnlineAutoTreeList', 1, NULL, NULL, 1, NULL, '0', 5.00, 0, NULL, 1, 0, 1, 0, NULL, 'admin', '2022-03-31 14:29:24', NULL, NULL, 0, 0, NULL, 0);

重点降级

  • 反对低代码模块:online 表单、online 报表
  • 新增数字范畴组件 JRangeNumber
  • 反对 popup 弹窗组件
  • JVxeTable 反对键盘操作
  • vite 首次关上界面加载慢问题 / 解决
  • 框架进行整体大重构,解决十分多问题
  • 反对 jeeccgboot3.2.0 版本的路由配置界面
  • 【签名革新】X-TIMESTAMP 牵扯
  • 【websocket 平安】websocket 服务端,存在性能和平安问题。#3278
  • 修复目前后盾接口挂了界面跳转 404, 改为间接跳转到登录界面
  • 调用表单的 resetFields 不会清空以后信息,界面显示上一次的数据
  • 设置 disabled,图片上传没有被禁用
  • 【vue3】用户治理抽屉挪动不能自适应
  • 解决菜单配置内部网址带 #号,打不开的问题
  • 租户治理确认删除款式问题
  • 职务治理,职务编码反复时,没有敌对提醒
  • 修复更多下拉菜单,只有点到字上才无效
  • 解决字典组件,赋值的时候,闪动成果
  • 系统管理等性能 页面款式、引入文件首字母大小写不匹配问题修复

Issues 解决

  • vue3 编辑性能有效 #I52955
  • 顶部菜单混合模式与设想中的不一样,应该是有顶部菜单,点击对应的顶部菜单显示左侧菜单 #I4YRRC
  • 按工夫查问,浏览器会提醒有效的工夫 #I51WTI
  • 点击 popup 弹框报错 #I4YZE2
  • 应用 vue2 版本 online 生成的 vue3 代码中,呈现 activeKey.value=ref(‘XXX’)的状况 #I515ZE
  • 用 docker 构建报 JavaScript heap out of memory#I530MB
  • 首页性能搜寻性能,当搜寻后果为菜单含子菜单时,选中此菜单,路由前端谬误 #33
  • 应用自定义组件 Table 刷新 报错 #40
  • VUE3 启用 CAS SSO 后我的项目打包后无奈获取到配置环境变量 #38
  • RangePicker 日期区间选择器异样 #I53NY4
  • 应用 JSelectInput 控件,当输出用户本人的标签时,点击清空按钮会报错 #I52BN3
  • 正文错别字 #29
  • vue3 首页关上慢 #I53WHR
  • 代码生成器生成列表页面批量删除操作后”已抉择 n 条记录“不主动清空 #34
  • useJvxeMethods.ts 打包后 getAllTable()办法 tableRefs 没有值 #I4ZWFP
  • jvxe 无奈进行行禁用 #I52YEI
  • 数据字典,_ 属于特殊字符,增加不了数据 #I52VH2
  • 应用 vue2 的 online 代码生成器生成的代码中,edit 时,没有将 id 暂存,导致更新时传至后盾的数据短少 id 报错 #I51EAR
  • 如何获取动静的路由地址,或者如何改成为顶部主菜单 配合左侧次级菜单 #36
  • 日期区间组件 RangePicker#I53G9Y
  • JSelectUser 组件申请值异样 #I53VZH
  • ts 文件热更新生效 #I4ZSQD

装置与应用

  • Get the project code
git clone https://github.com/jeecgboot/jeecgboot-vue3.git
  • Installation dependencies
cd jeecgboot-vue3
yarn install
  • 配置后盾接口地址
.env.development
  • run
yarn serve
  • build
yarn build

零碎成果

零碎后盾






Online 表单 &Online 报表 & 代码生成



报表成果





接口文档

流程设计 & 表单设计




报表设计




大屏模板

功能模块

Vue3 版已实现了系统管理、系统监控、报表、各种组件、前端权限、GUI 代码生成、Online 表单、Online 报表等平台性能。

├─首页
│  ├─首页(四套首页满足不同场景需要)│  ├─工作台
├─系统管理
│  ├─用户治理
│  ├─角色治理
│  ├─菜单治理
│  ├─权限设置(反对按钮权限、数据权限)│  ├─表单权限(管制字段禁用、暗藏)│  ├─部门治理
│  ├─我的部门(二级管理员)│  └─字典治理
│  └─分类字典
│  └─零碎布告
│  └─职务治理
│  └─通讯录
│  └─对象存储
│  └─多租户治理
├─系统监控
│  ├─网关路由配置(gateway)│  ├─定时工作
│  ├─数据源治理
│  ├─系统日志
│  ├─音讯核心(反对短信、邮件、微信推送等等)│  ├─数据日志(记录数据快照,可比照快照,查看数据变更状况)│  ├─零碎告诉
│  ├─SQL 监控
│  ├─性能监控
│  │  ├─监控 Redis
│  │  ├─Tomcat
│  │  ├─jvm
│  │  ├─服务器信息
│  │  ├─申请追踪
│  │  ├─磁盘监控
├─音讯核心
│  ├─我的音讯
│  ├─音讯治理
│  ├─模板治理
├─积木报表设计器
│─报表示例
│  ├─曲线图
│  └─饼状图
│  └─柱状图
│  └─折线图
│  └─面积图
│  └─雷达图
│  └─仪表图
│  └─进度条
│  └─排名列表
│  └─等等
│─大屏模板
│  ├─作战指挥核心大屏
│  └─物流服务中心大屏
├─代码生成器(GUI)│  ├─代码生成器性能(一键生成前后端代码,生成后无需批改间接用,相对是后端开发福音)│  ├─代码生成器模板(提供 4 套模板,别离反对单表和一对多模型,不同格调抉择)│  ├─代码生成器模板(生成代码,自带 excel 导入导出)│  ├─查问过滤器(查问逻辑无需编码,零碎依据页面配置主动生成)│  ├─高级查询器(弹窗主动组合查问条件)│  ├─Excel 导入导出工具集成(反对单表,一对多 导入导出)│  ├─平台挪动自适应反对
│─罕用示例
│  ├─自定义组件示例
│  ├─JVxeTable 示例(ERP 行业简单排版成果)
│  ├─单表模型例子
│  └─一对多模型例子
│  └─打印例子
│  └─一对多内嵌示例
│  └─异步树 Table
│  └─图片拖拽排序
│  └─图片翻页
│  └─图片预览
│  └─PDF 预览
│─封装通用组件    
│  ├─行编辑表格 JVxeTable
│  └─省略显示组件
│  └─工夫控件
│  └─高级查问 (未实现)
│  └─用户抉择组件
│  └─报表组件封装
│  └─字典组件
│  └─下拉多选组件
│  └─选人组件
│  └─选部门组件
│  └─通过部门选人组件
│  └─封装曲线、柱状图、饼状图、折线图等等报表的组件(通过封装,应用简略)│  └─在线 code 编辑器
│  └─上传文件组件
│  └─树列表组件
│  └─表单禁用组件
│  └─等等
│─更多页面模板
│  └─Mock 示例(子菜单很多)│  └─页面 & 导航(子菜单很多)│  └─组件 & 性能(子菜单很多)├─高级性能
│  ├─反对微前端
│  ├─提供 CAS 单点登录
│  ├─集成 Websocket 音讯告诉机制
│  ├─反对第三方登录(QQ、钉钉、微信等)│  ├─零碎编码规定
├─Online 在线开发
│  ├─Online 在线表单 
│  ├─Online 代码生成器
│  ├─Online 在线报表 
└─更多功能开发中。。

入门必备

本我的项目须要肯定前端基础知识,请确保把握 Vue 的基础知识,以便能解决一些常见的问题。倡议在开发前先学一下以下内容,提前理解和学习这些常识,会对我的项目了解十分有帮忙:

  • Vue3 文档
  • TypeScript
  • Vue-router
  • Ant-Design-Vue
  • Vben 文档
  • Es6
  • Vitejs
  • Pinia(vuex 代替计划)
  • Vue-RFCS
  • Vue2 迁徙到 3

浏览器反对

本地开发 举荐应用 Chrome 最新版 浏览器,不反对 Chrome 80 以下版本。

生产环境 反对古代浏览器,不反对 IE。

IE Edge Firefox Chrome Safari
not support last 2 versions last 2 versions last 2 versions last 2 versions
正文完
 0