main.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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. // 引入全局样式
  16. import '@/styles/index.scss'
  17. // 引入动画
  18. import '@/plugins/animate.css'
  19. // 路由
  20. import router, { setupRouter } from '@/router'
  21. // 权限
  22. import { setupAuth } from '@/directives'
  23. import { createApp } from 'vue'
  24. import App from './App.vue'
  25. import './permission'
  26. import { isDevMode } from '@/utils/env'
  27. if (isDevMode()) {
  28. console.info(isDevMode())
  29. import('element-plus/dist/index.css')
  30. }
  31. // 创建实例
  32. const setupAll = async () => {
  33. const app = createApp(App)
  34. await setupI18n(app)
  35. setupStore(app)
  36. setupGlobCom(app)
  37. setupElementPlus(app)
  38. setupVxeTable(app)
  39. setupRouter(app)
  40. setupAuth(app)
  41. await router.isReady()
  42. app.mount('#app')
  43. }
  44. setupAll()