fix: 修复头像和昵称同步更新问题

- mine.vue: 上传头像后正确处理URL
- account.vue: 加载用户信息时同步更新本地存储
- 确保我的页面和账号页面信息实时同步
This commit is contained in:
H1d3rOne committed 2026-03-10 06:41:27 +08:00
1 parent 492b337ddd
commit 41a959f298
2 files changed
+12 -4

No files matched your search

@@ -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
}
+6 -2
View File
@@ -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))
}