web-vue2
Version:
web ui for vue2
37 lines (34 loc) • 1.09 kB
JavaScript
import Vue from 'vue';
import VueI18n from 'vue-i18n';
const languages = require.context('./languages', true, /\.json$/)
//引入Vue-i18n
Vue.use(VueI18n);
//引入语言资源文件
// const locales = {
// "en-US": require('./languages/en-US.json'),
// "zh-CN": require('./languages/zh-CN.json')
// }
//配置自动加载目录下的所有语言
const locales = languages.keys().reduce((locales, path) => {
const moduleName = path.replace(/^\.\/(.*)\.\w+$/, '$1')
const value = languages(path)
locales[moduleName] = value;
return locales
}, {})
//获取浏览器语言环境,是因为浏览器语言返回值可能是:
//zh-cn Chinese(PRC)
//zh-tw Chinese(Taiwan Region)
//zh-hk Chinese(Hong Kong SAR, PRC)
//zh-sg Chinese(Singapore)
//en-us English(United States)
//en English
function getDefaultLang(){
let lang = navigator.language || navigator.userLanguage||"zh-CN"
return lang
}
//构建vuei18n实例,后面会export 这个实例
const i18n = new VueI18n({
locale: getDefaultLang(),
messages: locales
})
export default i18n;