fix(frontend): isolate subscription language preference (#6394)

* fix(frontend): isolate subscription language preference

* fix(frontend): defer date locale resolution
This commit is contained in:
dawn
2026-09-03 22:33:37 +08:00
committed by GitHub
parent 0c72dd8384
commit ded2aa150c
5 changed files with 95 additions and 23 deletions
+7 -5
View File
@@ -93,11 +93,11 @@ export default function SubPage() {
setMessageInstance(messageApi);
}, [messageApi]);
const { isMobile } = useMediaQuery(576);
const [lang, setLang] = useState<string>(() => LanguageManager.getLanguage());
const [lang, setLang] = useState<string>(() => LanguageManager.getLanguage('subscription'));
const onLangChange = useCallback((next: string) => {
setLang(next);
LanguageManager.setLanguage(next);
LanguageManager.setLanguage(next, 'subscription');
}, []);
const cycleTheme = useCallback(() => {
@@ -186,16 +186,18 @@ export default function SubPage() {
items.push({
key: 'lastOnline',
label: t('lastOnline'),
children: lastOnlineMs > 0 ? IntlUtil.formatDate(lastOnlineMs, datepicker) : '-',
children: lastOnlineMs > 0 ? IntlUtil.formatDate(lastOnlineMs, datepicker, lang) : '-',
});
items.push({
key: 'expiry',
label: t('subscription.expiry'),
children:
expireMs === 0 ? t('subscription.noExpiry') : IntlUtil.formatDate(expireMs, datepicker),
expireMs === 0
? t('subscription.noExpiry')
: IntlUtil.formatDate(expireMs, datepicker, lang),
});
return items;
}, [t]);
}, [t, lang]);
const androidMenuItems = useMemo(
() => [