import { createApp } from 'vue' import App from './App.vue' import router, {initMainRouter} from './router' import './style/index.scss' import 'virtual:svg-icons-register' // 【svg-icons相关】 import initComponent from '@/plugins/initComponent' import initProperties from '@/plugins/initProperties' import repeatFileValid from '@/plugins/repeatFileValid' import initDirect from '@/plugins/initDirect' import 'default-passive-events' import './browerPatch' import { createPinia } from 'pinia' import ElementPlus, {ElNotification} from 'element-plus' import 'element-plus/dist/index.css' // repeatFileValid() await initMainRouter() // 路由挂载前初始化路由表 const app = createApp(App) app.config.errorHandler = (err: any, instance, info) => { console.error(err) const path = instance?.$options.__file ElNotification({ duration: 0, title: `系统异常(${path?.match(/sea-warning-web(.*)/)?.[1] || path})`, message: err.stack, type: 'error', }) }; app.use(createPinia()) await initProperties(app) initComponent(app) app.use(initDirect) app.use(router) app.use(ElementPlus as any) app.mount('#app') // 设置为 true 以在浏览器开发工具的 performance/timeline 面板中启用对组件初始化、编译、渲染和更新的性能追踪。 app.config.performance = true