54 lines
1.4 KiB
JavaScript
54 lines
1.4 KiB
JavaScript
import './assets/main.css'
|
|
|
|
import ElementPlus from 'element-plus'
|
|
import 'element-plus/dist/index.css'
|
|
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
|
import { createPinia } from 'pinia'
|
|
import { createApp } from 'vue'
|
|
|
|
import App from './App.vue'
|
|
import router from './router'
|
|
|
|
// 导入全局样式
|
|
import './assets/styles/index.css'
|
|
|
|
// 导入渲染性能优化工具
|
|
import { initRenderOptimizations } from './utils/performance.js'
|
|
|
|
const app = createApp(App)
|
|
|
|
// 初始化渲染性能优化
|
|
initRenderOptimizations()
|
|
|
|
// 全局错误捕获
|
|
app.config.errorHandler = (err, vm, info) => {
|
|
console.error('Vue错误:', err)
|
|
console.error('错误信息:', info)
|
|
console.error('组件:', vm)
|
|
console.error('错误堆栈:', err.stack)
|
|
}
|
|
|
|
// 全局未捕获异常处理
|
|
window.addEventListener('error', (event) => {
|
|
console.error('全局错误:', event.error)
|
|
console.error('错误消息:', event.message)
|
|
console.error('错误文件:', event.filename)
|
|
console.error('错误行号:', event.lineno)
|
|
console.error('错误列号:', event.colno)
|
|
console.error('错误堆栈:', event.error?.stack)
|
|
})
|
|
|
|
// Promise未捕获异常处理
|
|
window.addEventListener('unhandledrejection', (event) => {
|
|
console.error('Promise错误:', event.reason)
|
|
console.error('Promise堆栈:', event.reason?.stack)
|
|
})
|
|
|
|
app.use(createPinia())
|
|
app.use(router)
|
|
app.use(ElementPlus, {
|
|
locale: zhCn,
|
|
})
|
|
|
|
app.mount('#app')
|