Commit 43ced5dc authored by 郑磊's avatar 郑磊

修改语言逻辑判断

parent 420a158e
...@@ -38,24 +38,35 @@ function normalizeLanguage(language: string): string { ...@@ -38,24 +38,35 @@ function normalizeLanguage(language: string): string {
* @param language * @param language
*/ */
export function getLanguage(language?: string): string { export function getLanguage(language?: string): string {
if (typeof language === 'string') { let languages =
language = normalizeLanguage(language) typeof language === 'string' && language
? [language]
: navigator && navigator.languages
? navigator.languages
: [DEFAULT_LANGUAGE]
languages = languages.map((t) => normalizeLanguage(t))
for (let language of languages) {
//如果是英文那就返回英文
if (language === 'en' || language.startsWith('en-')) {
return 'en'
}
//如果是中文那就判断是简体还是繁体
if (availableLanguages.includes(language)) { if (availableLanguages.includes(language)) {
return language return language
} }
//都不是就继续循环
} }
//尝试通过navigator.languages获取 //到这里表示既不是英文,也不包含任何中文标识,那么判断标识里有没有中文,有就用简体中文,没有就用英文
if (navigator && navigator.languages) { if (languages.some((t) => t === 'zh' || t.startsWith('zh-'))) {
for (let language of navigator.languages) { return 'zh-cn'
language = normalizeLanguage(language)
if (availableLanguages.includes(language)) {
return language
}
}
} }
return DEFAULT_LANGUAGE return 'en'
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment