From da5f8a92c55a7fd9b1e4e631efadb09e27333ce2 Mon Sep 17 00:00:00 2001 From: bob <312777916@qq.com> Date: Fri, 14 Mar 2025 14:54:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B6=88=E6=81=AF=E6=8E=92?= =?UTF-8?q?=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/stores/message.js | 11 ++++++++--- src/views/message/MessageLayout.vue | 3 ++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/stores/message.js b/src/stores/message.js index d91452b..bbd99e4 100644 --- a/src/stores/message.js +++ b/src/stores/message.js @@ -128,10 +128,15 @@ export const messageStore = defineStore('anylink-message', () => { } msgRecordsList.value[sessionId][item.msgId] = item }) + // 更新排序 - msgIdSortArray.value[sessionId] = Object.keys(msgRecordsList.value[sessionId]).sort( - (a, b) => a - b - ) + const array = Object.values(msgRecordsList.value[sessionId]) + array.sort((a, b) => { + const timeA = new Date(a.sendTime || a.msgTime).getTime() + const timeB = new Date(b.sendTime || b.msgTime).getTime() + return timeA - timeB + }) + msgIdSortArray.value[sessionId] = array.map((item) => item.msgId) } /** diff --git a/src/views/message/MessageLayout.vue b/src/views/message/MessageLayout.vue index d5d93a2..3290b89 100644 --- a/src/views/message/MessageLayout.vue +++ b/src/views/message/MessageLayout.vue @@ -489,7 +489,8 @@ const handleSendMessage = (content, resendSeq = '') => { msgType: selectedSession.value.sessionType, content: content, status: 'pending', - msgTime: new Date() + msgTime: new Date(), + sendTime: new Date() } const resendInterval = 2000 //2秒