diff --git a/src/utils/imageHandler.js b/src/utils/imageHandler.js new file mode 100644 index 0000000..7788f87 --- /dev/null +++ b/src/utils/imageHandler.js @@ -0,0 +1,20 @@ +/** + * 头像图片错误处理专用函数 + * @param {Event} e - 图片错误事件 + */ +export const handleAvatarImageError = (e) => { + console.log('头像资源出错') + e.target.onerror = null // 防止循环 + e.target.src = new URL('/src/assets/icon/defaultAvatar.png', import.meta.url).href +} + +export const handleRewardImageError = (e, type) => { + console.log('图片资源出错') + e.target.onerror = null // 防止循环 + + if (type == 'GOLD') { + e.target.src = new URL('/src/assets/icon/coin.png', import.meta.url).href + } else if (type == 'DOLLARS') { + e.target.src = new URL('/src/assets/icon/dollar.png', import.meta.url).href + } +} diff --git a/src/views/Activities/Game/components/topUser.vue b/src/views/Activities/Game/components/topUser.vue index 087ec62..5a4592c 100644 --- a/src/views/Activities/Game/components/topUser.vue +++ b/src/views/Activities/Game/components/topUser.vue @@ -29,7 +29,7 @@ alt="" width="100%" style="display: block; border-radius: 50%; aspect-ratio: 1/1; object-fit: cover" - @error="defaultAvatarUrl" + @error="handleAvatarImageError" /> @@ -107,6 +107,8 @@