Mask the region code in the language Settings
This commit is contained in:
parent
cdb49b25a1
commit
5a0d45eb2d
@ -4,13 +4,16 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from ".
|
|||||||
import './LanguageSelector.css';
|
import './LanguageSelector.css';
|
||||||
|
|
||||||
type Languages = 'en' | 'zh' | 'ja' | 'ko' | 'de' | 'ru' | 'fr';
|
type Languages = 'en' | 'zh' | 'ja' | 'ko' | 'de' | 'ru' | 'fr';
|
||||||
|
const normalizeLanguage = (language: string): Languages => {
|
||||||
|
return language.split('-')[0] as Languages;
|
||||||
|
};
|
||||||
|
|
||||||
const LanguageSelector: React.FC = () => {
|
const LanguageSelector: React.FC = () => {
|
||||||
const [selectedLang, setSelectedLang] = useState<Languages>(i18n.language as Languages);
|
const [selectedLang, setSelectedLang] = useState<Languages>(normalizeLanguage(i18n.language));
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const handleLanguageChanged = (lang: string) => {
|
const handleLanguageChanged = (lang: string) => {
|
||||||
setSelectedLang(lang as Languages);
|
setSelectedLang(normalizeLanguage(lang));
|
||||||
};
|
};
|
||||||
|
|
||||||
i18n.on('languageChanged', handleLanguageChanged);
|
i18n.on('languageChanged', handleLanguageChanged);
|
||||||
@ -21,7 +24,7 @@ const LanguageSelector: React.FC = () => {
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const handleLanguageChange = (value: string) => {
|
const handleLanguageChange = (value: string) => {
|
||||||
const nextLang = value as Languages;
|
const nextLang = normalizeLanguage(value);
|
||||||
i18n.changeLanguage(nextLang);
|
i18n.changeLanguage(nextLang);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user