From 97e611c07245d55903cb5bcb23a3a36c77c35647 Mon Sep 17 00:00:00 2001 From: "pikachu1995@126.com" Date: Thu, 29 Oct 2026 10:56:28 +0800 Subject: [PATCH] =?UTF-8?q?refactor(im):=20=E9=87=8D=E6=9E=84=E8=81=8A?= =?UTF-8?q?=E5=A4=A9=E9=9D=A2=E6=9D=BFUI=E7=BB=84=E4=BB=B6=E5=B9=B6?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=A4=9A=E5=A4=84=E4=BA=A4=E4=BA=92=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将头像组件从 dicebear 外链改为本地首字+底色生成,新增 avatarColor 工具函数 - 重构订单卡片(footPrint.vue)布局,优化商品与订单信息展示结构 - 重构店铺详情卡片(storeDetail.vue),统一信息行与评分行样式 - 移除消息气泡中的昵称时间行,调整气泡背景色与头像内边距 - 修复 face 变量名与全局组件 冲突导致头像URL被当作标签渲染 - 将 unload 事件监听替换为 pagehide,兼容 Chrome 弃用策略 - 修复搜索关键词未转义正则元字符导致输入特殊字符时抛异常 - 修复 WebSocket onMessage 对无 text 字段的推送消息误调用 JSON.parse - 将 setup 中同步调用全局 mixin 方法移至 onMounted,避免代理未就绪 - 商品/订单图片统一添加 onerror 默认图兜底 - 聊天列表消息预览支持 emoji 图片渲染(textReplaceEmoji) - 搜索框增加 clearable 属性及"没有找到相关好友"空态提示 - 锁定 element-plus 版本为 2.14.1 防止自动升级引入兼容问题 - 日期格式化分隔符由斜杠改为横杠 - 提现设置页新增提现规则说明字段,满足微信审核公示要求 --- im/package.json | 2 +- im/src/App.vue | 9 +- im/src/components/chat/panel/OtherLink.vue | 18 +- im/src/components/chat/panel/TalkPanel.vue | 34 ++-- .../chat/panel/template/footPrint.vue | 187 ++++++++++-------- .../chat/panel/template/goodsLink.vue | 6 +- .../chat/panel/template/storeDetail.vue | 177 +++++++++++------ im/src/components/face-null.vue | 34 +++- im/src/components/face.vue | 59 ++++-- im/src/plugins/ws-socket.js | 27 ++- im/src/utils/functions.js | 19 +- im/src/views/layout/MainLayout.vue | 13 +- im/src/views/message/index.vue | 53 +++-- .../setting/WITHDRAWAL_SETTING.vue | 81 ++++++-- 14 files changed, 473 insertions(+), 246 deletions(-) diff --git a/im/package.json b/im/package.json index 3ed03e70e..a7bed4380 100644 --- a/im/package.json +++ b/im/package.json @@ -16,7 +16,7 @@ "axios": "^1.7.9", "babel-plugin-prismjs": "^2.0.1", "core-js": "^3.49.0", - "element-plus": "^2.14.1", + "element-plus": "2.14.1", "js-audio-recorder": "^1.0.6", "js-base64": "^2.5.1", "nprogress": "^0.2.0", diff --git a/im/src/App.vue b/im/src/App.vue index 223710b67..087e1f12c 100644 --- a/im/src/App.vue +++ b/im/src/App.vue @@ -34,11 +34,12 @@ function unloadHandler (e) { onMounted(() => { setRefreshView(refreshView); - window.addEventListener('beforeunload', e => beforeunloadHandler(e)) - window.addEventListener('unload', e => unloadHandler(e)) + window.addEventListener('beforeunload', beforeunloadHandler) + // unload 事件已被 Chrome 弃用(Permissions-Policy 禁止),改用 pagehide + window.addEventListener('pagehide', unloadHandler) }); onBeforeUnmount(() => { - window.removeEventListener('beforeunload', e => beforeunloadHandler(e)) - window.removeEventListener('unload', e => unloadHandler(e)) + window.removeEventListener('beforeunload', beforeunloadHandler) + window.removeEventListener('pagehide', unloadHandler) }); diff --git a/im/src/components/chat/panel/OtherLink.vue b/im/src/components/chat/panel/OtherLink.vue index 75e3268ea..2dc7ceea1 100644 --- a/im/src/components/chat/panel/OtherLink.vue +++ b/im/src/components/chat/panel/OtherLink.vue @@ -1,5 +1,5 @@