From 3aa2c604d8db19c42580fb5ba01dcaf6f99f41d1 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Tue, 17 Dec 2024 00:07:50 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96=E6=A1=8C=E9=9D=A2?= =?UTF-8?q?=E7=AB=AF=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/assets/js/App.vue | 1 + resources/assets/js/store/actions.js | 10 ++++++++++ resources/assets/js/store/state.js | 1 + 3 files changed, 12 insertions(+) diff --git a/resources/assets/js/App.vue b/resources/assets/js/App.vue index f7f99b994..8043648fc 100755 --- a/resources/assets/js/App.vue +++ b/resources/assets/js/App.vue @@ -104,6 +104,7 @@ export default { '$route': { handler(to) { this.routePath = to.path + this.$store.state.routeName = to.name }, immediate: true, }, diff --git a/resources/assets/js/store/actions.js b/resources/assets/js/store/actions.js index e9fd0c7e9..fb8c530fa 100644 --- a/resources/assets/js/store/actions.js +++ b/resources/assets/js/store/actions.js @@ -2576,6 +2576,12 @@ export default { return !state.dialogMsgs.find(m => m.id == id)?.read_at }) } + if (data.last_at + && original.last_at + && $A.dayjs(data.last_at) < $A.dayjs(original.last_at)) { + delete data.last_at + delete data.last_msg + } state.cacheDialogs.splice(index, 1, Object.assign({}, original, data)); } else { state.cacheDialogs.push(data); @@ -3735,6 +3741,10 @@ export default { }, 3000); }; state.ws.onmessage = async (e) => { + if ($A.inArray(state.routeName, ['preload', '404'])) { + wgLog && console.log("[WS] Preload", e); + return; + } wgLog && console.log("[WS] Message", e); let result = $A.jsonParse(e.data); if (result.type === "encrypt" && result.encrypted) { diff --git a/resources/assets/js/store/state.js b/resources/assets/js/store/state.js index f2af66a71..ab2b2ab89 100644 --- a/resources/assets/js/store/state.js +++ b/resources/assets/js/store/state.js @@ -46,6 +46,7 @@ export default { audioPlaying: null, // 路由记录 + routeName: null, routeHistorys: [], routeHistoryLast: {},