From 0ca5d9805f48a36677790a4e8ee88024e57ada52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=9D=E5=B0=98?= <237809796@qq.com> Date: Wed, 17 Jun 2026 23:41:13 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=8A=E6=96=AD:=20=E4=B8=B4=E6=97=B6?= =?UTF-8?q?=E7=A6=81=E7=94=A8=E8=99=9A=E6=8B=9F=E6=BB=9A=E5=8A=A8=E8=A3=81?= =?UTF-8?q?=E5=89=AA=E9=9A=94=E7=A6=BB=E5=8E=86=E5=8F=B2=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E9=87=8D=E5=8F=A0=E6=A0=B9=E5=9B=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/composables/ai/useAiVirtualScroll.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/composables/ai/useAiVirtualScroll.ts b/src/composables/ai/useAiVirtualScroll.ts index 1610d62..8396c62 100644 --- a/src/composables/ai/useAiVirtualScroll.ts +++ b/src/composables/ai/useAiVirtualScroll.ts @@ -136,7 +136,12 @@ export function useAiVirtualScroll(options: AiVirtualScrollOptions) { /** 是否应渲染该项内容(IO 可见 或 pinned)。 */ function shouldRender(key: string): boolean { - return renderedKeys.value.has(key) || pinnedKeys.value.has(key) + // 🔍 诊断(P0 消息重叠):临时禁用虚拟滚动裁剪,所有消息内容恒渲染, + // 隔离"历史消息打开全重叠"根因。若禁用后重叠消失→虚拟滚动时序根因; + // 若仍重叠→CSS/markdown DOM 根因。定位后回退此改动。 + void key + return true + // return renderedKeys.value.has(key) || pinnedKeys.value.has(key) } /** 更新 pinned 集合(调用方 watch 流式末条后传入新集合)。 */