vue+elementUI添加没有的内置语言包(例如拉丁语)
我使用了一种投机取巧的办法,切换语言包,那就把拉丁语的语言包导入进来进行切换
import Vue from 'vue'
import App from './App'
import ElementUI from 'element-ui'
import VueI18n from 'vue-i18n'
// 导入Element-UI 语言包
import enLocale from 'element-ui/lib/locale/lang/en'
import zhLocale from 'element-ui/lib/locale/lang/zh-CN'
// 导入elementUI中不带的拉丁文
import laLocale from './assets/lang/neizhi/la'
Vue.use(VueI18n);
// 注册i18n实例并引入我们语言文件,将Element-UI的语言包与我们的合并
// 使用到es6的Object.assign()方法
const i18n = new VueI18n({
locale: 'zh',
messages:{
'en':Object.assign(require('./lang/en.json'), enLocale),
'zh':Object.assign(require('./lang/zh.json'), zhLocale),
'la': Object.assign(require('./assets/lang/la'),laLocale)
},
});
Vue.use(ElementUI, {
i18n: (key,value) => i18n.t(key,value)
});
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
el: '#app',
i18n,
components: { App },
template: '<App/>'
})