bootstrap.ts 680 B

12345678910111213141516171819202122232425262728293031
  1. import { createApp } from 'vue';
  2. import { setupI18n } from '@vben/locales';
  3. import '@vben/styles';
  4. import { preferences } from '@vben-core/preferences';
  5. import { loadThirdPartyMessage } from '#/forward';
  6. import { setupStore } from '#/store';
  7. import App from './app.vue';
  8. import { router } from './router';
  9. async function bootstrap(namespace: string) {
  10. const app = createApp(App);
  11. // 国际化 i18n 配置
  12. await setupI18n(app, {
  13. defaultLocale: preferences.app.locale,
  14. loadThirdPartyMessage,
  15. });
  16. // 配置 pinia-store
  17. await setupStore(app, { namespace });
  18. // 配置路由及路由守卫
  19. app.use(router);
  20. app.mount('#app');
  21. }
  22. export { bootstrap };