菜单布局等初步完成
This commit is contained in:
@@ -8,20 +8,48 @@ import store from "./store";
|
||||
import { setupRouterGuards, setupTokenRefresh } from "@/utils/permission";
|
||||
import { setupPermissionDirectives } from "@/directives/permission";
|
||||
|
||||
const app = createApp(App);
|
||||
// 初始化应用
|
||||
async function initApp() {
|
||||
const app = createApp(App);
|
||||
|
||||
// 使用插件
|
||||
app.use(ElementPlus);
|
||||
app.use(store);
|
||||
app.use(router);
|
||||
// 使用插件
|
||||
app.use(ElementPlus);
|
||||
app.use(store);
|
||||
|
||||
// 在路由初始化前,尝试恢复登录状态并生成动态路由
|
||||
const authState = (store.state as any).auth;
|
||||
console.log('[应用初始化] 检查登录状态...');
|
||||
console.log('[应用初始化] Token:', !!authState.token);
|
||||
console.log('[应用初始化] 菜单数量:', authState.menus?.length || 0);
|
||||
|
||||
if (authState.token && authState.menus && authState.menus.length > 0) {
|
||||
try {
|
||||
console.log('[应用初始化] 开始生成动态路由...');
|
||||
await store.dispatch('auth/generateRoutes');
|
||||
console.log('[应用初始化] 动态路由生成成功');
|
||||
} catch (error) {
|
||||
console.error('[应用初始化] 动态路由生成失败:', error);
|
||||
}
|
||||
} else {
|
||||
console.log('[应用初始化] 无需生成动态路由(未登录或无菜单)');
|
||||
}
|
||||
|
||||
app.use(router);
|
||||
|
||||
// 设置权限指令
|
||||
setupPermissionDirectives(app, store);
|
||||
// 设置权限指令
|
||||
setupPermissionDirectives(app, store);
|
||||
|
||||
// 设置路由守卫
|
||||
setupRouterGuards(router, store);
|
||||
// 设置路由守卫
|
||||
setupRouterGuards(router, store);
|
||||
|
||||
// 设置Token自动刷新
|
||||
setupTokenRefresh(store);
|
||||
// 设置Token自动刷新
|
||||
setupTokenRefresh(store);
|
||||
|
||||
app.mount("#app");
|
||||
app.mount("#app");
|
||||
console.log('[应用初始化] 应用挂载完成');
|
||||
}
|
||||
|
||||
// 启动应用
|
||||
initApp().catch(error => {
|
||||
console.error('[应用初始化] 应用启动失败:', error);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user