diff --git a/src/plugins/permission.ts b/src/plugins/permission.ts index 2890b6df..0493511a 100644 --- a/src/plugins/permission.ts +++ b/src/plugins/permission.ts @@ -35,13 +35,11 @@ export function setupPermission() { const permissionStore = usePermissionStore(); const userStore = useUserStore(); - // 确保用户信息已加载 - if (!userStore.userInfo.username) { - await userStore.getUserInfo(); - } - // 确保动态路由已生成 if (!permissionStore.isDynamicRoutesGenerated) { + /** 先获取最新的用户信息 */ + await userStore.getUserInfo(); + const dynamicRoutes = await permissionStore.generateRoutes(); dynamicRoutes.forEach((route: RouteRecordRaw) => { router.addRoute(route); diff --git a/src/views/profile/index.vue b/src/views/profile/index.vue index 947bb2fe..835db2f8 100644 --- a/src/views/profile/index.vue +++ b/src/views/profile/index.vue @@ -6,7 +6,7 @@
- + ({}); const enum DialogType { @@ -443,12 +446,12 @@ const handleFileChange = async (event: Event) => { // 调用文件上传API try { const data = await FileAPI.uploadFile(file); - // 更新用户头像 - userProfile.value.avatar = data.url; // 更新用户信息 await UserAPI.updateProfile({ avatar: data.url, }); + // 更新用户头像 + userStore.userInfo.avatar = data.url; } catch (error) { console.error("头像上传失败:" + error); ElMessage.error("头像上传失败");