main.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { createApp } from 'vue';
  2. import App from './App.vue';
  3. import router, { setupRouter } from '/@/router';
  4. import { setupStore } from '/@/store';
  5. import { setupAntd } from '/@/setup/ant-design-vue';
  6. import { setupErrorHandle } from '/@/setup/error-handle';
  7. import { setupGlobDirectives } from '/@/setup/directives';
  8. import { setupI18n } from '/@/setup/i18n';
  9. import { setupProdMockServer } from '../mock/_createProductionServer';
  10. import { setApp } from '/@/setup/App';
  11. import { isDevMode, isProdMode, isUseMock } from '/@/utils/env';
  12. import '/@/design/index.less';
  13. import '/@/locales/index';
  14. const app = createApp(App);
  15. // Configure component library
  16. setupAntd(app);
  17. // Multilingual configuration
  18. setupI18n(app);
  19. // Configure routing
  20. setupRouter(app);
  21. // Configure vuex store
  22. setupStore(app);
  23. // Register global directive
  24. setupGlobDirectives(app);
  25. // Configure global error handling
  26. setupErrorHandle(app);
  27. // Mount when the route is ready
  28. router.isReady().then(() => {
  29. app.mount('#app');
  30. });
  31. // The development environment takes effect
  32. if (isDevMode()) {
  33. app.config.performance = true;
  34. window.__APP__ = app;
  35. }
  36. // If you do not need to setting the mock service in the production environment, you can comment the code
  37. if (isProdMode() && isUseMock()) {
  38. setupProdMockServer();
  39. }
  40. // Used to share app instances in other modules
  41. setApp(app);