diff --git a/src/layouts/index.tsx b/src/layouts/index.tsx index b1376bb7..f8e5c1ec 100644 --- a/src/layouts/index.tsx +++ b/src/layouts/index.tsx @@ -47,7 +47,9 @@ export default function () { const [user, setUser] = useState({}); const [loading, setLoading] = useState(true); const [systemInfo, setSystemInfo] = useState(); - const [siteTitle, setSiteTitle] = useState(config.siteName); + const [siteTitle, setSiteTitle] = useState( + () => localStorage.getItem('qinglong_panel_title')?.trim() || intl.get('青龙'), + ); const [collapsed, setCollapsed] = useState(false); const [initLoading, setInitLoading] = useState(true); const { @@ -166,6 +168,15 @@ export default function () { reloadSystemConfig(); }, []); + useEffect(() => { + if (!['/login', '/initialization', '/error'].includes(location.pathname)) { + return; + } + const title = + (config.documentTitleMap as any)[location.pathname] || intl.get('未找到'); + document.title = `${title} - ${siteTitle}`; + }, [location.pathname, siteTitle]); + useEffect(() => { if (theme === 'vs-dark') { document.body.setAttribute('data-dark', 'true'); @@ -281,7 +292,7 @@ export default function () { <>
- {siteTitle} + {intl.get('青龙')} { e.stopPropagation(); diff --git a/src/utils/config.ts b/src/utils/config.ts index 41a1c8c9..4c37d2c4 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -1,11 +1,8 @@ import intl from 'react-intl-universal'; const baseUrl = window.__ENV__QlBaseUrl || '/'; -const defaultSiteName = intl.get('青龙'); -const siteName = - localStorage.getItem('qinglong_panel_title')?.trim() || defaultSiteName; export default { - siteName, + siteName: intl.get('青龙'), baseUrl, apiPrefix: `${baseUrl}api/`, authKey: 'token',