From d112f4ea6bb10444450bb96917f78b4c0be12e38 Mon Sep 17 00:00:00 2001 From: Backend Agent Date: Tue, 4 Aug 2026 17:17:34 +0800 Subject: [PATCH] =?UTF-8?q?fix(title):=20=E9=A6=96=E6=AC=A1=E6=8C=82?= =?UTF-8?q?=E8=BD=BD=E6=97=B6AI=E8=87=AA=E5=8A=A8=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=BC=80=E5=85=B3=E5=B7=B2=E5=BC=80=E5=90=AF=E4=B9=9F=E8=A6=81?= =?UTF-8?q?=E8=A7=A6=E5=8F=91=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复 useStep4Title/index.ts 中 prevAiAutoSelect 初始化为 true 时 useEffect 不触发生成的 bug。新增 isFirstMount ref 区分首次挂载 和后续开关切换,确保页面刷新后 aiAutoSelect=true 也能自动生成标题。 Fixes AI Code Review blocking issue on PR #1236 --- .../src/pages/generate/hooks/useStep4Title/index.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/web/src/pages/generate/hooks/useStep4Title/index.ts b/apps/web/src/pages/generate/hooks/useStep4Title/index.ts index 8898bba53..3f6aaac81 100644 --- a/apps/web/src/pages/generate/hooks/useStep4Title/index.ts +++ b/apps/web/src/pages/generate/hooks/useStep4Title/index.ts @@ -38,11 +38,21 @@ export function useStep4Title({ titleSettings, onTitleSettingsChange }: UseStep4 // 样式更新 const styleUpdaters = useTitleStyleUpdaters({ titleSettings, onTitleSettingsChange }) - // 追踪是否第一次渲染,避免初始加载时误触发 + // 追踪 AI 自动选择开关的上一次值 & 是否首次挂载 const prevAiAutoSelect = useRef(titleSettings.aiAutoSelect) + const isFirstMount = useRef(true) // 当 AI 自动选择开关打开时,自动生成/选择一个标题填入 + // 首次挂载时如果开关已经是 true 且无标题,也需要触发 useEffect(() => { + if (isFirstMount.current) { + isFirstMount.current = false + if (titleSettings.aiAutoSelect && !titleSettings.title) { + autoGenerateTitle() + } + prevAiAutoSelect.current = titleSettings.aiAutoSelect + return + } if (titleSettings.aiAutoSelect && !prevAiAutoSelect.current && !titleSettings.title) { autoGenerateTitle() }