2026-07-10 16:44:49 +08:00
|
|
|
|
import { createApp } from 'vue'
|
|
|
|
|
|
import { createPinia } from 'pinia'
|
|
|
|
|
|
|
2026-07-16 11:03:54 +08:00
|
|
|
|
// 这三个能力通过函数或指令使用,无法由模板组件扫描自动补充样式。
|
|
|
|
|
|
import 'element-plus/es/components/message/style/css'
|
|
|
|
|
|
import 'element-plus/es/components/message-box/style/css'
|
|
|
|
|
|
import 'element-plus/es/components/loading/style/css'
|
2026-07-10 16:44:49 +08:00
|
|
|
|
|
|
|
|
|
|
import App from './App.vue'
|
2026-07-16 11:03:54 +08:00
|
|
|
|
import service from '@/api/request'
|
2026-07-10 16:44:49 +08:00
|
|
|
|
import router from './router'
|
|
|
|
|
|
import './styles/index.scss'
|
|
|
|
|
|
|
|
|
|
|
|
const app = createApp(App)
|
|
|
|
|
|
|
|
|
|
|
|
app.use(createPinia())
|
|
|
|
|
|
app.use(router)
|
|
|
|
|
|
|
2026-07-16 11:03:54 +08:00
|
|
|
|
async function bootstrap() {
|
|
|
|
|
|
// 开发环境默认使用 Mock;生产环境只有显式开启时才加载整套 Mock 数据。
|
|
|
|
|
|
// 这样真实部署不会被前端适配器截断请求,也不会把 Mock 数据打进首屏包。
|
|
|
|
|
|
const shouldEnableMock = import.meta.env.VITE_ENABLE_MOCK === 'true'
|
|
|
|
|
|
|| (import.meta.env.DEV && import.meta.env.VITE_ENABLE_MOCK !== 'false')
|
|
|
|
|
|
|
|
|
|
|
|
if (shouldEnableMock) {
|
|
|
|
|
|
const { installMockAdapter } = await import('@/mock/adapter')
|
|
|
|
|
|
installMockAdapter(service)
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
app.mount('#app')
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void bootstrap()
|