mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-08-25 11:37:13 +00:00
perf: language selecting logic
This commit is contained in:
+24
-11
@@ -61,19 +61,32 @@ export default function Login() {
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const judgeLanguage = () => {
|
const judgeLanguage = () => {
|
||||||
// here's for user have never set the language
|
if (i18n.language === 'zh-CN' || i18n.language === 'zh-Hans') {
|
||||||
// judge the language by the browser
|
setCurrentLanguage('zh-Hans');
|
||||||
const language = navigator.language;
|
localStorage.setItem('langbot_language', 'zh-Hans');
|
||||||
if (language) {
|
} else {
|
||||||
let lang = 'zh-Hans';
|
setCurrentLanguage('en-US');
|
||||||
if (language === 'zh-CN') {
|
localStorage.setItem('langbot_language', 'en-US');
|
||||||
lang = 'zh-Hans';
|
}
|
||||||
} else {
|
// check if the language is already set
|
||||||
lang = 'en-US';
|
const lang = localStorage.getItem('langbot_language');
|
||||||
}
|
if (lang) {
|
||||||
i18n.changeLanguage(lang);
|
i18n.changeLanguage(lang);
|
||||||
setCurrentLanguage(lang);
|
setCurrentLanguage(lang);
|
||||||
localStorage.setItem('langbot_language', lang);
|
return;
|
||||||
|
} else {
|
||||||
|
const language = navigator.language;
|
||||||
|
if (language) {
|
||||||
|
let lang = 'zh-Hans';
|
||||||
|
if (language === 'zh-CN') {
|
||||||
|
lang = 'zh-Hans';
|
||||||
|
} else {
|
||||||
|
lang = 'en-US';
|
||||||
|
}
|
||||||
|
i18n.changeLanguage(lang);
|
||||||
|
setCurrentLanguage(lang);
|
||||||
|
localStorage.setItem('langbot_language', lang);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -60,21 +60,38 @@ export default function Register() {
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const judgeLanguage = () => {
|
const judgeLanguage = () => {
|
||||||
const language = navigator.language;
|
if (i18n.language === 'zh-CN' || i18n.language === 'zh-Hans') {
|
||||||
if (language) {
|
setCurrentLanguage('zh-Hans');
|
||||||
let lang = 'zh-Hans';
|
localStorage.setItem('langbot_language', 'zh-Hans');
|
||||||
if (language === 'zh-CN') {
|
} else {
|
||||||
lang = 'zh-Hans';
|
setCurrentLanguage('en-US');
|
||||||
} else {
|
localStorage.setItem('langbot_language', 'en-US');
|
||||||
lang = 'en-US';
|
}
|
||||||
}
|
// check if the language is already set
|
||||||
|
const lang = localStorage.getItem('langbot_language');
|
||||||
|
console.log('lang: ', lang);
|
||||||
|
if (lang) {
|
||||||
i18n.changeLanguage(lang);
|
i18n.changeLanguage(lang);
|
||||||
setCurrentLanguage(lang);
|
setCurrentLanguage(lang);
|
||||||
localStorage.setItem('langbot_language', lang);
|
} else {
|
||||||
|
const language = navigator.language;
|
||||||
|
if (language) {
|
||||||
|
let lang = 'zh-Hans';
|
||||||
|
if (language === 'zh-CN') {
|
||||||
|
lang = 'zh-Hans';
|
||||||
|
} else {
|
||||||
|
lang = 'en-US';
|
||||||
|
}
|
||||||
|
console.log('language: ', lang);
|
||||||
|
i18n.changeLanguage(lang);
|
||||||
|
setCurrentLanguage(lang);
|
||||||
|
localStorage.setItem('langbot_language', lang);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleLanguageChange = (value: string) => {
|
const handleLanguageChange = (value: string) => {
|
||||||
|
console.log('handleLanguageChange: ', value);
|
||||||
i18n.changeLanguage(value);
|
i18n.changeLanguage(value);
|
||||||
setCurrentLanguage(value);
|
setCurrentLanguage(value);
|
||||||
localStorage.setItem('langbot_language', value);
|
localStorage.setItem('langbot_language', value);
|
||||||
|
|||||||
Reference in New Issue
Block a user