12345678910111213141516171819202122232425262728293031323334353637383940 |
- 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
|