From 30c4dba81d6bdce916bce0eb7c5d73b9b18fa5c7 Mon Sep 17 00:00:00 2001 From: hzj <1304805162@qq.com> Date: Fri, 5 Dec 2025 16:04:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=96=B0=E5=B7=A5=E5=85=B7=E7=B1=BB):=20?= =?UTF-8?q?=E5=B0=86=E9=BB=98=E8=AE=A4=E5=A4=B4=E5=83=8F=E5=92=8C=E5=95=86?= =?UTF-8?q?=E5=93=81=E5=9B=BE=E6=8F=90=E7=82=BC=E6=88=90=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=B1=BB=EF=BC=8C=E5=B9=B6=E5=9C=A8=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E4=B8=AD=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/imageHandler.js | 20 +++++++++++ .../Activities/Game/components/topUser.vue | 12 ++----- src/views/Activities/Game/index.vue | 26 +++----------- .../IndependenceDay/components/topUser.vue | 12 ++----- .../Lebanon/IndependenceDay/index.vue | 23 +++--------- .../Activities/Reward/RechargeReward.vue | 10 ++---- .../IndependenceDay/components/topUser.vue | 12 ++----- .../Activities/UAE/IndependenceDay/index.vue | 23 +++--------- .../Yemen/IndependenceDay/index.vue | 23 +++--------- src/views/AdminCenter/MyAgencyTeams.vue | 11 ++---- src/views/AdminCenter/MyBDLeaderTeams.vue | 11 ++---- src/views/AdminCenter/MyBDTeams.vue | 11 ++---- src/views/AdminCenter/index.vue | 9 ++--- src/views/AgencyCenter/AgencySetting.vue | 14 +++----- src/views/AgencyCenter/Message.vue | 19 ++++------ .../AgencyCenter/components/TeamBillMore.vue | 10 ++---- src/views/AgencyCenter/index.vue | 9 ++--- src/views/ApplyHost/ApplyView.vue | 21 +++++------ src/views/BDCenter/availableIncome.vue | 11 ++---- src/views/BDCenter/incomeDetails.vue | 13 +++---- src/views/BDCenter/index.vue | 13 +++---- src/views/BDLeaderCenter/index.vue | 18 ++++------ src/views/HostCenter/HostSetting.vue | 9 ++--- src/views/Invitation/InviteToRegister.vue | 35 ++----------------- src/views/Invitation/inviteAgency.vue | 9 ++--- src/views/Invitation/inviteBD.vue | 9 ++--- src/views/Invitation/inviteBDLeader.vue | 9 ++--- src/views/Invitation/inviteRechargeAgency.vue | 9 ++--- src/views/Ranking/KingAndQueen/TopList.vue | 25 +++---------- src/views/Ranking/Overall/Ranking.vue | 11 ++---- .../Ranking/Overall/components/topUser.vue | 9 ++--- src/views/Ranking/WeeklyStar/WeeklyStar.vue | 25 +++---------- .../Ranking/WeeklyStar/components/topUser.vue | 10 ++---- src/views/RechargeAgency/Recruit.vue | 19 +++++----- src/views/RechargeAgency/SearchUser.vue | 14 ++++---- src/views/RechargeAgency/index.vue | 12 ++----- src/views/Wallet/Transfer/SearchPayee.vue | 17 ++++----- src/views/Wallet/Transfer/Transfer.vue | 9 ++--- 38 files changed, 157 insertions(+), 405 deletions(-) create mode 100644 src/utils/imageHandler.js 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 @@