fix: 当 isGeneratingImageFlag=true 时强制显示占位图
问题:hasImageContent 检测到历史消息中的图片导致占位图提前消失 解决:isGeneratingImageFlag 优先级最高,为 true 时忽略 hasImageContent Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
ed30ca214d
commit
2d0b556ee9
@ -229,17 +229,21 @@ function PureMessages({
|
||||
status,
|
||||
});
|
||||
|
||||
if (hasImageContent) {
|
||||
// 图片已生成,延迟后隐藏占位图
|
||||
// 🆕 关键修复:当 isGeneratingImageFlag 为 true 时,优先显示占位图
|
||||
// 因为这表示后端正在生成图片,即使检测到旧的图片内容也不应该隐藏占位图
|
||||
if (isGeneratingImageFlag) {
|
||||
console.log("[Messages useEffect] isGeneratingImageFlag=true,强制显示占位图");
|
||||
setShowThinkingWithDelay(true);
|
||||
} else if (hasImageContent && !isGeneratingImage) {
|
||||
// 只有当 isGeneratingImageFlag 为 false 且有图片内容时,才考虑隐藏占位图
|
||||
console.log("[Messages useEffect] 图片已生成,延迟后隐藏");
|
||||
const timer = setTimeout(() => {
|
||||
setShowThinkingWithDelay(false);
|
||||
}, delayTime);
|
||||
return () => clearTimeout(timer);
|
||||
} else if (isGeneratingImage || isGeneratingImageFlag) {
|
||||
// 收到 GENERATING_IMAGE 标记(对话消息已发送),继续显示占位图等待图片
|
||||
// 使用 isGeneratingImageFlag 来解决消息延迟添加时标记检测不到的问题
|
||||
console.log("[Messages useEffect] 检测到生成标记,显示占位图");
|
||||
} else if (isGeneratingImage) {
|
||||
// 消息中检测到 GENERATING_IMAGE 标记
|
||||
console.log("[Messages useEffect] 检测到消息中的生成标记,显示占位图");
|
||||
setShowThinkingWithDelay(true);
|
||||
} else if (status === "streaming" || status === "submitted") {
|
||||
// 正在处理中(分析意图或流式传输),显示占位图
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user