From 41a959f29813604ce98e2bb27bfd333fd5cb4d24 Mon Sep 17 00:00:00 2001 From: H1d3rOne Date: Tue, 10 Mar 2026 06:41:27 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A4=B4=E5=83=8F?= =?UTF-8?q?=E5=92=8C=E6=98=B5=E7=A7=B0=E5=90=8C=E6=AD=A5=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - mine.vue: 上传头像后正确处理URL - account.vue: 加载用户信息时同步更新本地存储 - 确保我的页面和账号页面信息实时同步 --- xuan-deduct-uniapp/src/pages/mine/account.vue | 8 ++++++-- xuan-deduct-uniapp/src/pages/mine/mine.vue | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/xuan-deduct-uniapp/src/pages/mine/account.vue b/xuan-deduct-uniapp/src/pages/mine/account.vue index 033ff5e..77b40b3 100644 --- a/xuan-deduct-uniapp/src/pages/mine/account.vue +++ b/xuan-deduct-uniapp/src/pages/mine/account.vue @@ -86,11 +86,15 @@ export default { if (res.success && res.data) { this.userInfo = res.data - if (this.userInfo.avatarUrl && !this.userInfo.avatarUrl.startsWith('http') && !this.userInfo.avatarUrl.startsWith('wxfile://')) { - this.userInfo.avatarUrl = api.getBaseUrl().replace('/api', '') + this.userInfo.avatarUrl + let avatarUrl = this.userInfo.avatarUrl || '' + if (avatarUrl && !avatarUrl.startsWith('http') && !avatarUrl.startsWith('wxfile://')) { + avatarUrl = api.getBaseUrl().replace('/api', '') + avatarUrl + this.userInfo.avatarUrl = avatarUrl } uni.setStorageSync('userInfo', JSON.stringify(res.data)) + uni.setStorageSync('userAvatar', avatarUrl) + uni.setStorageSync('username', this.userInfo.nickname || this.userInfo.username || '玄机用户') } else { this.userInfo = localUserInfo } diff --git a/xuan-deduct-uniapp/src/pages/mine/mine.vue b/xuan-deduct-uniapp/src/pages/mine/mine.vue index e3bb0f9..04d86dd 100644 --- a/xuan-deduct-uniapp/src/pages/mine/mine.vue +++ b/xuan-deduct-uniapp/src/pages/mine/mine.vue @@ -262,13 +262,17 @@ export default { uni.hideLoading() if (uploadRes.success && uploadRes.data) { - this.avatar = uploadRes.data.avatarUrl || uploadRes.data + let avatarUrl = uploadRes.data.avatarUrl || uploadRes.data + if (avatarUrl && !avatarUrl.startsWith('http') && !avatarUrl.startsWith('wxfile://')) { + avatarUrl = api.getBaseUrl().replace('/api', '') + avatarUrl + } + this.avatar = avatarUrl uni.setStorageSync('userAvatar', this.avatar) const userInfoStr = uni.getStorageSync('userInfo') if (userInfoStr) { const userInfo = JSON.parse(userInfoStr) - userInfo.avatarUrl = this.avatar + userInfo.avatarUrl = uploadRes.data.avatarUrl || uploadRes.data uni.setStorageSync('userInfo', JSON.stringify(userInfo)) }