init i18n

This commit is contained in:
2022-08-31 10:22:44 +08:00
parent 1e78bbf6ee
commit 974079296b
5 changed files with 273 additions and 45 deletions

View File

@@ -2,8 +2,9 @@ import Vue from 'vue'
import VueI18n from 'vue-i18n'
import Cookies from 'js-cookie'
import zhCNLocale from 'element-ui/lib/locale/lang/zh-CN'
import enLocale from 'element-ui/lib/locale/lang/en'
import zhCN from './zh-CN'
import en from './en'
Vue.use(VueI18n)
export const messages = {
@@ -11,11 +12,33 @@ export const messages = {
'_lang': '简体中文',
...zhCN,
...zhCNLocale
},
'en': {
'_lang': 'English',
...en,
...enLocale
}
}
export function getLanguage() {
const chooseLanguage = Cookies.get('language')
if (chooseLanguage) return chooseLanguage
// if has not choose language
const language = (navigator.language || navigator.browserLanguage).toLowerCase()
const locales = Object.keys(messages)
for (const locale of locales) {
if (language.indexOf(locale) > -1) {
Cookies.set('language', locale)
return locale
}
}
Cookies.set('language', 'zh-CN')
return 'zh-CN'
}
export default new VueI18n({
// locale: Cookies.get('language') || 'zh-CN',
locale: 'zh-CN', // 先默认中文
locale: getLanguage(), // 先默认中文
messages
})