From 5ae4921ee07027d7dcf025cd0a6b8fd3fc87ec3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=87=E6=A2=A6=E4=BA=BA?= Date: Fri, 6 Sep 2024 20:59:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BC=98=E5=8C=96=E4=BA=91=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E5=8A=9F=E8=83=BD=EF=BC=8C=E8=87=AA=E5=8A=A8=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E6=8E=89=E9=9D=9E=E9=A6=96=E4=B8=AA=E7=A9=BA=E4=BC=9A?= =?UTF-8?q?=E8=AF=9D=EF=BC=8C=E9=81=BF=E5=85=8D=E5=A4=9A=E4=B8=AA=E7=A9=BA?= =?UTF-8?q?=E4=BC=9A=E8=AF=9D=E5=9C=A8=E4=B8=AD=E9=97=B4=EF=BC=8C=E6=9B=B4?= =?UTF-8?q?=E6=96=B9=E4=BE=BF=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/utils/sync.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/app/utils/sync.ts b/app/utils/sync.ts index fed030679..db2cbd37e 100644 --- a/app/utils/sync.ts +++ b/app/utils/sync.ts @@ -131,10 +131,21 @@ const MergeStates: StateMerger = { const finalIds: Record = {}; localState.sessions = localState.sessions.filter((localSession) => { + // 去除掉重复的会话 if (finalIds[localSession.id]) { return false; } finalIds[localSession.id] = true; + + // 去除掉非首个空会话,避免多个空会话在中间,不方便管理 + if ( + localSession.messages.length === 0 && + localSession != localState.sessions[0] + ) { + return false; + } + + // 去除云端删除并且删除时间小于本地修改时间的会话 return ( (remoteDeletedSessionIds[localSession.id] || -1) <= localSession.lastUpdate