From ab9ef79a41d9588c98ac67b5b460d98a9af9bb7c Mon Sep 17 00:00:00 2001 From: thzxx Date: Sun, 12 Jul 2026 20:09:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=A0=8F=E6=A0=87=E7=AD=BE=E9=A1=B5=E7=82=B9=E5=87=BB=E6=97=A0?= =?UTF-8?q?=E5=93=8D=E5=BA=94=20=E2=80=94=20setDetailTab=20=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E7=AE=80=E5=86=99=E5=BC=95=E7=94=A8=E4=BA=86=E4=B8=8D?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E7=9A=84=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 根因:setDetailTab: (tab) => set({ detailTab }) 对象简写 { detailTab } 等同于 { detailTab: detailTab },会查找变量 detailTab, 但参数名是 tab,作用域中不存在 detailTab 变量,每次点击 Tab 都抛 ReferenceError。 错误在 onChange 事件回调中抛出,React 不用 ErrorBoundary 捕获事件异常, 所以应用不崩溃,只是 Tab 永远不响应。 修复:set({ detailTab: tab }) — 显式赋值,避免简写陷阱 --- src/stores/ui-store.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/stores/ui-store.ts b/src/stores/ui-store.ts index 62ea637..17a8f31 100644 --- a/src/stores/ui-store.ts +++ b/src/stores/ui-store.ts @@ -72,7 +72,7 @@ export const useUIStore = create((set) => ({ setOnboardingCompleted: (completed) => set({ onboardingCompleted: completed }), // v0.3.0: 面板控制 - setDetailTab: (tab) => set({ detailTab }), + setDetailTab: (tab) => set({ detailTab: tab }), // 退出专注模式时恢复快照(若用户在专注模式下手动切换面板,视为退出专注模式) // v0.3.0 修复: 退出专注模式时同时恢复另一个面板的快照,与 toggleFocusMode 关闭逻辑一致 toggleSidebar: () => set((s) => s.focusMode