ruoyi-plus-soybean/src/main.ts

34 lines
850 B
TypeScript
Raw Normal View History

import { createApp } from 'vue';
import App from './App.vue';
import AppProvider from './AppProvider.vue';
2021-08-18 12:02:59 +08:00
import { setupStore } from './store';
import { router, setupRouter } from './router';
import { setupSmoothScroll, setupNaive } from './plugins';
import 'virtual:windi.css';
import './styles/css/global.css';
2021-08-18 12:02:59 +08:00
async function setupApp() {
const naiveApp = createApp(AppProvider);
2021-08-18 12:02:59 +08:00
const app = createApp(App);
/** 注册naive UI组件 */
setupNaive(app);
/** 挂载全局状态 */
setupStore(app);
2021-08-27 12:00:09 +08:00
// 优先挂载一下 naiveApp 解决路由守卫Axios中可使用LoadingBarDialogMessage 等之类组件
2021-08-18 12:02:59 +08:00
naiveApp.mount('#naiveApp', true);
2021-08-18 12:02:59 +08:00
// 挂载路由
2021-08-26 14:09:31 +08:00
await setupRouter(app);
2021-08-18 12:02:59 +08:00
// 路由准备就绪后挂载APP实例
await router.isReady();
app.mount('#app', true);
}
setupSmoothScroll();
setupApp();