基于jeecgboot-vue3的Flowable增加流程支持组件与element-plus组件导入支持

因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。

1、package.json文件需要增加相关流程组件,如下

java 复制代码
"dependencies": {
    "@element-plus/icons-vue": "^2.3.1",
    "@highlightjs/vue-plugin": "^2.1.2",
    "@vueup/vue-quill": "1.2.0",
    "@wangeditor/editor": "^5.1.23",
    "@wangeditor/editor-for-vue": "5.1.10",
  
    "bpmn-js": "^8.10.0",
    "bpmn-js-task-resize": "^1.2.0",
    "bpmn-js-token-simulation": "^0.10.0",
    "codemirror-editor-vue3": "^2.4.1",
    "element-plus": "^2.5.6",
    "path-browserify": "^1.0.1",
    "path-to-regexp": "^6.2.1",
    "qs": "^6.11.2",
3.1.0",
    "xe-utils": "3.5.14",
    "xml-js": "1.6.11",
  },

2、建立专门的flowable注册组件文件 registerFlowableComp.ts

java 复制代码
//注册flowable相关组件 add by nbacheng
import ElementPlus from 'element-plus';
import locale from 'element-plus/es/locale/lang/zh-cn'; // 中文语言
import 'element-plus/theme-chalk/dark/css-vars.css';
import ElementIcons from '@/plugins/svgicon';

import VForm3 from '@/lib/vform/designer.umd.js';
import '@/lib/vform/designer.style.css';

// 高亮highlightjs
import 'highlight.js/lib/common';
import 'highlight.js/styles/atom-one-dark-reasonable.css';// 引入内置样式
import highlightPlugin from "@highlightjs/vue-plugin";
// add by nbacheng

export async function registerFlowableComp(app: App) {
  app.use(ElementIcons);
  app.use(VForm3);
  app.use(highlightPlugin);
  // 使用element-plus 并且设置全局的大小
  app.use(ElementPlus, {
    locale: locale
  });
}

3、main.ts修改如下:

javascript 复制代码
import App from './App.vue';
import { createApp } from 'vue';
import { initAppConfigStore } from '/@/logics/initAppConfig';
import { setupErrorHandle } from '/@/logics/error-handle';
import { router, setupRouter } from '/@/router';
import { setupRouterGuard } from '/@/router/guard';
import { setupStore } from '/@/store';
import { setupGlobDirectives } from '/@/directives';
import { setupI18n } from '/@/locales/setupI18n';
import { registerGlobComp } from '/@/components/registerGlobComp';
import { registerFlowableComp } from '/@/settings/registerFlowableComp';
import { registerThirdComp } from '/@/settings/registerThirdComp';
import { useSso } from '/@/hooks/web/useSso';
// 注册online模块lib
import { registerPackages } from '/@/utils/monorepo/registerPackages';

import 'uno.css';
import '/@/design/index.less';
import 'ant-design-vue/dist/reset.css';

// 注册图标
import 'virtual:svg-icons-register';

async function bootstrap() {
  // 创建应用实例
  const app = createApp(App);
  
  // 多语言配置,异步情况:语言文件可以从服务器端获得
  await setupI18n(app);

  // 配置存储
  setupStore(app);

  // 初始化内部系统配置
  initAppConfigStore();

  // 注册外部模块路由(注册online模块lib)
  registerPackages(app);

  // 注册全局组件
  registerGlobComp(app);
  
  //CAS单点登录
  await useSso().ssoLogin();

  // 配置路由
  setupRouter(app);

  // 路由保护
  setupRouterGuard(router);

  // 注册全局指令
  setupGlobDirectives(app);

  // 配置全局错误处理
  setupErrorHandle(app);
  
  //注册flowable组件
  await registerFlowableComp(app);

  // 注册第三方组件
  await registerThirdComp(app);

  // 当路由准备好时再执行挂载( https://next.router.vuejs.org/api/#isready)
  await router.isReady();

  // 挂载应用
  app.mount('#app', true);

  console.log(" vue3 app 加载完成!")
}

bootstrap();
相关推荐
袁煦丞2 分钟前
JuiceSSH你的口袋里的Linux操控台:cpolar内网穿透实验室第530个成功挑战
前端·程序员·远程工作
鹏多多6 分钟前
深入解析vue的transition过渡动画使用和优化
前端·javascript·vue.js
程序员小续18 分钟前
React 源码解读流程:从入口到渲染的全链路揭秘
前端·javascript·面试
江城开朗的豌豆22 分钟前
React key的隐藏技能:key改变时究竟发生了什么?
前端·javascript·react.js
JarvanMo30 分钟前
我用 Ktor 替换了 Retrofit-我的网络代码减少了一半
前端
excel34 分钟前
WebGL 入门到进阶全解析:从 Canvas 上下文到 3D 绘制与 WebGL2 新特性
前端
掘金安东尼1 小时前
用 WebGL + Solid.js 构建混合材质 Shader
前端·webgl
恋猫de小郭1 小时前
Flutter 小技巧之有趣的 UI 骨架屏框架 skeletonizer
android·前端·flutter
江城开朗的豌豆1 小时前
玩转React Hooks
前端·javascript·react.js
阿酷tony1 小时前
教育场景下禁用html5播放器拖动进度条的例子
前端·html·html5·在线教育场景·禁止播放器拖动