main.ts 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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 '/@/directives';
  8. import { setupI18n } from '/@/locales/setupI18n';
  9. import { setupProdMockServer } from '../mock/_createProductionServer';
  10. import { registerGlobComp } from '/@/components/registerGlobComp';
  11. import { isDevMode, isProdMode, isUseMock } from '/@/utils/env';
  12. import '/@/design/index.less';
  13. const app = createApp(App);
  14. registerGlobComp(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', true);
  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. }