当设备未连接时,各页面默认显示英文语言的文本,并在标题追加 (Disconnect)
This commit is contained in:
@@ -15,8 +15,9 @@ import { FeatureGate } from "@/components/FeatureGate";
|
||||
import { navigateToSelect } from "./SelectPage";
|
||||
import { cn } from "@/lib/utils";
|
||||
import localeZh from "@/locales/data-zh.json";
|
||||
import localeZhHK from "@/locales/data-zh-HK.json";
|
||||
import localeEn from "@/locales/data-en.json";
|
||||
import { resolveLocalePack } from "@/locales/resolveLocale";
|
||||
import { usePageTitleWithConnection } from "@/hooks/usePageTitleWithConnection";
|
||||
|
||||
type EffectLocale = NonNullable<(typeof localeZh)["effect"]>;
|
||||
|
||||
@@ -96,11 +97,12 @@ export default function EffectsPage() {
|
||||
const { deviceState, updateSetting } = useDevice();
|
||||
|
||||
const effectText = useMemo((): EffectLocale => {
|
||||
const lang = deviceState?.language;
|
||||
const pack = lang === 0 ? localeEn : lang === 1 ? localeZhHK : localeZh;
|
||||
return (pack.effect ?? localeZh.effect) as EffectLocale;
|
||||
const pack = resolveLocalePack(deviceState?.language);
|
||||
return (pack.effect ?? localeEn.effect) as EffectLocale;
|
||||
}, [deviceState?.language]);
|
||||
|
||||
const pageTitle = usePageTitleWithConnection(effectText.pageTitle ?? "Effects");
|
||||
|
||||
const sceneLabels = useMemo(() => {
|
||||
const opts = effectText.style?.options ?? [];
|
||||
return [...opts].sort((a, b) => a.index - b.index).map((o) => o.label);
|
||||
@@ -180,7 +182,7 @@ export default function EffectsPage() {
|
||||
<button onClick={() => setLocation("/")} className="mr-4 text-white/60 active:text-white transition-colors">
|
||||
<ChevronLeft size={24} />
|
||||
</button>
|
||||
<h1 className="flex-1 text-center text-[17px] font-semibold text-white">{effectText.pageTitle}</h1>
|
||||
<h1 className="flex-1 text-center text-[17px] font-semibold text-white">{pageTitle}</h1>
|
||||
<IOSToggle
|
||||
checked={effectOn}
|
||||
onChange={(v) => {
|
||||
|
||||
Reference in New Issue
Block a user