vue-vben-admin/src/main.ts

52 lines
1.1 KiB
TypeScript
Raw Normal View History

2021-02-17 22:07:22 +08:00
import '/@/design/index.less';
import 'windi.css';
2020-09-28 20:19:10 +08:00
import { createApp } from 'vue';
2020-11-26 21:19:39 +08:00
import App from './App.vue';
2020-10-15 21:12:38 +08:00
2020-09-28 20:19:10 +08:00
import router, { setupRouter } from '/@/router';
import { setupStore } from '/@/store';
2021-01-10 21:23:21 +08:00
import { setupErrorHandle } from '/@/logics/error-handle';
2020-12-21 22:34:07 +08:00
import { setupGlobDirectives } from '/@/directives';
2021-01-09 23:28:52 +08:00
import { setupI18n } from '/@/locales/setupI18n';
import { registerGlobComp } from '/@/components/registerGlobComp';
2020-10-15 21:12:38 +08:00
2021-03-05 23:12:01 +08:00
import 'vite-plugin-svg-icons/register';
import { isDevMode } from '/@/utils/env';
2020-11-18 22:41:59 +08:00
(async () => {
const app = createApp(App);
2020-09-28 20:19:10 +08:00
// Register global components
registerGlobComp(app);
2021-01-09 23:28:52 +08:00
// Configure routing
setupRouter(app);
2021-01-23 21:10:00 +08:00
// Configure vuex store
setupStore(app);
2020-11-18 22:41:59 +08:00
// Register global directive
setupGlobDirectives(app);
2020-09-28 20:19:10 +08:00
// Configure global error handling
setupErrorHandle(app);
2020-09-28 20:19:10 +08:00
await Promise.all([
// Multilingual configuration
setupI18n(app),
// Mount when the route is ready
router.isReady(),
]);
2020-10-18 21:55:21 +08:00
app.mount('#app', true);
2020-09-28 20:19:10 +08:00
// The development environment takes effect
if (isDevMode()) {
app.config.performance = true;
window.__APP__ = app;
}
})();