main.ts 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. // 引入windi css
  2. import '@/plugins/windi.css'
  3. // 导入全局的svg图标
  4. import '@/plugins/svgIcon'
  5. // 初始化多语言
  6. import { setupI18n } from '@/plugins/vueI18n'
  7. // 引入状态管理
  8. import { setupStore } from '@/store'
  9. // 全局组件
  10. import { setupGlobCom } from '@/components'
  11. // 引入 element-plus
  12. import { setupElementPlus } from '@/plugins/elementPlus'
  13. // 引入 vxe-table
  14. import { setupVxeTable } from '@/plugins/vxeTable'
  15. // 引入 form-create
  16. import { setupFormCreate } from '@/plugins/formCreate'
  17. // 引入全局样式
  18. import '@/styles/index.scss'
  19. // 引入动画
  20. import '@/plugins/animate.css'
  21. // 路由
  22. import router, { setupRouter } from '@/router'
  23. // 权限
  24. import { setupAuth } from '@/directives'
  25. import { createApp } from 'vue'
  26. import App from './App.vue'
  27. import './permission'
  28. import { isDevMode } from '@/utils/env'
  29. import { MyPD } from '@/components/bpmnProcessDesigner/package/index.js'
  30. import '@/components/bpmnProcessDesigner/package/theme/index.scss'
  31. import 'bpmn-js/dist/assets/diagram-js.css'
  32. import 'bpmn-js/dist/assets/bpmn-font/css/bpmn.css'
  33. import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-codes.css'
  34. import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css'
  35. import hljs from 'highlight.js' //导入代码高亮文件
  36. import 'highlight.js/styles/github.css' //导入代码高亮样式 新版
  37. import Logger from '@/utils/Logger'
  38. // 本地开发模式 全局引入 element-plus 样式,加快第一次进入速度
  39. if (isDevMode()) {
  40. import('element-plus/dist/index.css')
  41. }
  42. // 创建实例
  43. const setupAll = async () => {
  44. const app = createApp(App)
  45. //自定义一个代码高亮指令
  46. app.directive('highlight', function (el) {
  47. const blocks = el.querySelectorAll('code')
  48. blocks.forEach((block: any) => {
  49. hljs.highlightElement(block)
  50. })
  51. })
  52. await setupI18n(app)
  53. MyPD(app)
  54. setupStore(app)
  55. setupGlobCom(app)
  56. setupElementPlus(app)
  57. setupVxeTable(app)
  58. setupFormCreate(app)
  59. setupRouter(app)
  60. setupAuth(app)
  61. await router.isReady()
  62. app.mount('#app')
  63. }
  64. setupAll()
  65. Logger.prettyPrimary(`欢迎使用`, import.meta.env.VITE_APP_TITLE)