perf: 前端按需引入 Element Plus + Vite 拆包 + template 优化

This commit is contained in:
SmartUp Developer
2026-05-25 00:18:08 +08:00
parent 41a439d830
commit 4971263a3a
6 changed files with 458 additions and 15 deletions
+12 -9
View File
@@ -1,21 +1,24 @@
import { createApp } from 'vue'
import { createPinia } from 'pinia'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import 'element-plus/theme-chalk/dark/css-vars.css'
import * as ElIcons from '@element-plus/icons-vue'
// 程序化 API 组件手动引入(按需引入不自动包含)
import { ElMessage, ElMessageBox, ElNotification, ElLoading } from 'element-plus'
import 'element-plus/es/components/message/style/css'
import 'element-plus/es/components/message-box/style/css'
import 'element-plus/es/components/notification/style/css'
import 'element-plus/es/components/loading/style/css'
import App from './App.vue'
import router from './router'
import './assets/main.css'
const app = createApp(App)
// Register all Element Plus icons globally
for (const [name, component] of Object.entries(ElIcons)) {
app.component(name, component)
}
app.use(createPinia())
app.use(router)
app.use(ElementPlus)
app.mount('#app')
// 确保程序化 API 在 setup 外也可用(已全局引用,不 tree-shake
ElMessage
ElMessageBox
ElNotification
ElLoading