feat: 对接默认头像处理

This commit is contained in:
hzj 2025-11-04 18:32:20 +08:00
parent 5cb3421150
commit f4ea886b40
3 changed files with 23 additions and 12 deletions

View File

@ -115,9 +115,9 @@
>
<img
v-if="member.memberProfile?.userAvatar"
:src="member.memberProfile.userAvatar"
:src="member.memberProfile.userAvatar || ''"
:alt="member.memberProfile?.userNickname"
@error="handleImageError"
@error="defaultAvatarUrl"
style="width: 100%; height: 100%; border-radius: 50%; object-fit: cover"
/>
<div
@ -389,9 +389,10 @@ const getAvatarPlaceholder = (nickname) => {
}
//
const handleImageError = (event) => {
console.warn('头像加载失败:', event.target.src)
//
const defaultAvatarUrl = (e) => {
console.log('头像资源出错')
e.target.onerror = null //
e.target.src = new URL('/src/assets/images/WeeklyStar/defaultAvatar.png', import.meta.url).href
}
//

View File

@ -42,10 +42,10 @@
<div class="avatar">
<img
v-if="userInfo.userAvatar"
:src="userInfo.userAvatar"
:src="userInfo.userAvatar || ''"
:alt="userInfo.userNickname || userInfo.name"
class="avatar-image"
@error="handleAvatarError"
@error="defaultAvatarUrl"
/>
<span v-else class="avatar-text">{{
(userInfo.userNickname || userInfo.name).charAt(0)
@ -89,7 +89,7 @@
:src="selectedUser.userAvatar || ''"
:alt="selectedUser.userNickname || userInfo.name"
class="avatar-image"
@error="handleAvatarError"
@error="defaultAvatarUrl"
/>
<span v-else>{{ selectedUser.name.charAt(0) }}</span>
</div>
@ -225,8 +225,10 @@ const fetchFreightBalance = async () => {
}
//
const handleAvatarError = () => {
userInfo.value.userAvatar = null
const defaultAvatarUrl = (e) => {
console.log('头像资源出错')
e.target.onerror = null //
e.target.src = new URL('/src/assets/images/WeeklyStar/defaultAvatar.png', import.meta.url).href
}
//

View File

@ -46,9 +46,10 @@
>
<img
v-if="message.avatar"
:src="message.avatar"
:src="message.avatar || ''"
:alt="message.name"
style="display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover"
@error="defaultAvatarUrl"
/>
<div v-else>{{ message.name?.charAt(0) || 'U' }}</div>
</div>
@ -62,7 +63,7 @@
white-space: nowrap;
"
>
{{ message.name || t('unknown_user') }}aaaaaaaaaaaaaaaaaaaaaa
{{ message.name || t('unknown_user') }}
</h4>
<div>
<div style="display: flex; align-items: center">
@ -128,6 +129,13 @@ const mockMessages = [
},
]
//
const defaultAvatarUrl = (e) => {
console.log('头像资源出错')
e.target.onerror = null //
e.target.src = new URL('/src/assets/images/WeeklyStar/defaultAvatar.png', import.meta.url).href
}
//
const fetchMessages = async () => {
loading.value = true