This commit is contained in:
2025-09-24 16:43:10 +08:00
parent 12f46e6f8e
commit 9dbc054483
130 changed files with 16474 additions and 4660 deletions

View File

@@ -1,15 +1,62 @@
import { createApp } from 'vue'
import { createPinia } from 'pinia'
import { naiveUi } from '@/common/naive-ui/components.ts'
import { SystemServiceIntegration } from '@/services/SystemServiceIntegration'
import { registerBuiltInApps } from '@/apps'
import 'virtual:uno.css'
import './css/basic.css'
import App from './ui/App.vue'
// 注册内置应用
registerBuiltInApps()
// 初始化系统服务
const systemService = new SystemServiceIntegration({
debug: import.meta.env.DEV,
enablePerformanceMonitoring: true,
enableSecurityAudit: true
})
// 创建应用实例
const app = createApp(App)
// 注册插件
app.use(createPinia())
app.use(naiveUi)
app.mount('#app')
// 提供系统服务给组件使用
app.provide('systemService', systemService)
// 初始化系统服务然后挂载应用
systemService.initialize()
.then(() => {
app.mount('#app')
console.log('桌面系统启动完成')
})
.catch((error) => {
console.error('系统启动失败:', error)
// 显示错误信息
document.body.innerHTML = `
<div style="display: flex; justify-content: center; align-items: center; height: 100vh; font-family: sans-serif;">
<div style="text-align: center; color: #e74c3c;">
<h1>系统启动失败</h1>
<p>错误信息: ${error.message}</p>
<button onclick="location.reload()" style="padding: 10px 20px; margin-top: 20px; cursor: pointer;">
重新加载
</button>
</div>
</div>
`
})
// 全局错误处理
app.config.errorHandler = (error, instance, info) => {
console.error('Vue应用错误:', error, info)
}
// 在页面卸载时清理系统服务
window.addEventListener('beforeunload', () => {
systemService.shutdown()
})