From 42082311d316bc794e3bc7721e1876b27faa5237 Mon Sep 17 00:00:00 2001 From: fengsilin Date: Fri, 17 Apr 2026 14:08:29 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E4=B8=8D=E7=94=9F=E6=95=88=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除 PageLayout useEffect 中多余的 localStorage 语言恢复逻辑。 i18next-browser-languagedetector 在初始化时已自动处理 localStorage, 同步的 changeLanguage 调用会覆盖异步 loadStatus 设置的管理员默认语言。 Co-Authored-By: Claude Opus 4.6 --- web/src/components/layout/PageLayout.jsx | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/web/src/components/layout/PageLayout.jsx b/web/src/components/layout/PageLayout.jsx index ebba8d5..b8978a3 100644 --- a/web/src/components/layout/PageLayout.jsx +++ b/web/src/components/layout/PageLayout.jsx @@ -91,8 +91,8 @@ const PageLayout = () => { if (success) { statusDispatch({ type: 'set', payload: data }); setStatusData(data); - // Apply admin-configured default language for unauthenticated users - if (data.default_language && !localStorage.getItem('user')) { + // Apply admin-configured default language + if (data.default_language) { i18n.changeLanguage(data.default_language); } } else { @@ -117,10 +117,6 @@ const PageLayout = () => { linkElement.href = logo; } } - const savedLang = localStorage.getItem('i18nextLng'); - if (savedLang) { - i18n.changeLanguage(savedLang); - } }, [i18n]); return (