| | |
| | | import { createApp } from 'vue'; |
| | | |
| | | import router, { setupRouter } from '/@/router'; |
| | | import { setupStore } from '/@/store'; |
| | | import { setupAntd } from '/@/setup/ant-design-vue'; |
| | | import { setupErrorHandle } from '/@/setup/error-handle'; |
| | | import { setupGlobDirectives } from '/@/setup/directives'; |
| | | import { setupI18n } from '/@/setup/i18n'; |
| | | |
| | | import { setupProdMockServer } from '../mock/_createProductionServer'; |
| | | import { setApp } from '/@/setup/App'; |
| | | |
| | | import App from './App.vue'; |
| | | |
| | | import { isDevMode, isProdMode, isUseMock } from '/@/utils/env'; |
| | | |
| | | import '/@/design/index.less'; |
| | | |
| | | import '/@/locales/index'; |
| | | // Register windi |
| | | import 'virtual:windi.css'; |
| | | // Register icon sprite |
| | | import 'virtual:svg-icons-register'; |
| | | |
| | | const app = createApp(App); |
| | | import App from './App.vue'; |
| | | import { createApp } from 'vue'; |
| | | import { initAppConfigStore } from '/@/logics/initAppConfig'; |
| | | import { setupErrorHandle } from '/@/logics/error-handle'; |
| | | import { router, setupRouter } from '/@/router'; |
| | | import { setupRouterGuard } from '/@/router/guard'; |
| | | import { setupStore } from '/@/store'; |
| | | import { setupGlobDirectives } from '/@/directives'; |
| | | import { setupI18n } from '/@/locales/setupI18n'; |
| | | import { registerGlobComp } from '/@/components/registerGlobComp'; |
| | | |
| | | // Configure component library |
| | | setupAntd(app); |
| | | |
| | | // Multilingual configuration |
| | | setupI18n(app); |
| | | |
| | | // Configure routing |
| | | setupRouter(app); |
| | | |
| | | // Configure vuex store |
| | | setupStore(app); |
| | | |
| | | // Register global directive |
| | | setupGlobDirectives(app); |
| | | |
| | | // Configure global error handling |
| | | setupErrorHandle(app); |
| | | |
| | | // Mount when the route is ready |
| | | router.isReady().then(() => { |
| | | app.mount('#app'); |
| | | }); |
| | | |
| | | // The development environment takes effect |
| | | if (isDevMode()) { |
| | | app.config.performance = true; |
| | | window.__APP__ = app; |
| | | // Do not introduce on-demand in local development? |
| | | // In the local development for introduce on-demand, the number of browser requests will increase by about 20%. |
| | | // Which may slow down the browser refresh. |
| | | // Therefore, all are introduced in local development, and only introduced on demand in the production environment |
| | | if (import.meta.env.DEV) { |
| | | import('ant-design-vue/dist/antd.less'); |
| | | } |
| | | |
| | | // If you do not need to use the mock service in the production environment, you can comment the code |
| | | if (isProdMode() && isUseMock()) { |
| | | setupProdMockServer(); |
| | | async function bootstrap() { |
| | | const app = createApp(App); |
| | | |
| | | // Configure store |
| | | setupStore(app); |
| | | |
| | | // Initialize internal system configuration |
| | | initAppConfigStore(); |
| | | |
| | | // Register global components |
| | | registerGlobComp(app); |
| | | |
| | | // Multilingual configuration |
| | | await setupI18n(app); |
| | | |
| | | // Configure routing |
| | | setupRouter(app); |
| | | |
| | | // router-guard |
| | | setupRouterGuard(); |
| | | |
| | | // Register global directive |
| | | setupGlobDirectives(app); |
| | | |
| | | // Configure global error handling |
| | | setupErrorHandle(app); |
| | | |
| | | // Mount when the route is ready |
| | | // https://next.router.vuejs.org/api/#isready |
| | | await router.isReady(); |
| | | |
| | | app.mount('#app', true); |
| | | } |
| | | |
| | | // Used to share app instances in other modules |
| | | setApp(app); |
| | | void bootstrap(); |