bootstrap.ts 774 B

123456789101112131415161718192021222324252627282930313233
  1. import '@vben/styles';
  2. import { setupI18n } from '@vben/locales';
  3. import { preference } from '@vben/preference';
  4. import { setupStore } from '@vben/stores';
  5. import { createApp } from 'vue';
  6. import App from './app.vue';
  7. import { router } from './router';
  8. async function bootstrap(namespace: string, env: string) {
  9. const app = createApp(App);
  10. // 国际化 i18n 配置
  11. await setupI18n(app, { defaultLocale: preference.locale });
  12. // 配置 pinia-store
  13. await setupStore(app, { env, namespace });
  14. // 配置路由及路由守卫
  15. app.use(router);
  16. app.mount('#app');
  17. // production mock server
  18. if (import.meta.env.PROD) {
  19. import('./mock-prod-server').then(({ setupProdMockServer }) => {
  20. setupProdMockServer();
  21. });
  22. }
  23. }
  24. export { bootstrap };