import { createApp } from 'vue' import App from './App.vue' import router, { setupRouter } from '@/router' import { i18n } from '@/i18n' import { setupStore } from '@/store' import ArcoVue from '@arco-design/web-vue'; import '@arco-design/web-vue/dist/arco.css'; /* 其他模块引入 */ import 'virtual:svg-icons-register' // 引入 Symbol icon图标 import '@/assets/iconsvg/iconfont' import SvgIcon from '@/components/Svg-icon/SvgIcon.vue' // 额外引入图标库 import ArcoVueIcon from '@arco-design/web-vue/es/icon' async function appInit() { const app = createApp(App) // 注入组件 app.component('SvgIcon', SvgIcon) // 挂载状态管理 await setupStore(app) // arco-design app.use(ArcoVue) app.use(ArcoVueIcon) app.use(i18n) window['$t'] = i18n.global.t // 挂载路由 await setupRouter(app) // 路由准备就绪后挂载APP实例 await router.isReady() // 挂载到页面 app.mount('#app', true) // 挂载到 window window['$vue'] = app } appInit().then(() => { // 捕获全局错误 // window.addEventListener("unhandledrejection", event => { // console.warn(`UNHANDLED PROMISE REJECTION: ${event.reason}`); // }); })