为了满足很多公司都已经向international方向发展,顾使用多语言的网站已经太普遍了, 所以是使用vue-i18n和elementUI实现国际化.接下来我会尽量写的详细一点:
element-ui的i18n内容 个人觉得的应该写得清楚一些
1.安装所需要用到的东西
npm i element-ui -S // 安装element
npm install --save vue-i18n //安装i18n
2. 创建目录
3.编写所需要用到的语言(我只写了中文和英文)
cn.js
const cn = {
message: {
i1: '欢迎来到我的项目',
},
}
export default cn
en.js
const en = {
message: {
i1: 'Welcome to my project',
},
}
export default en;
两个js文件的json里的key命名必须是一样的
i18n.js
import Vue from 'vue'
import locale from 'element-ui/lib/locale';
import VueI18n from 'vue-i18n'
import en from './langs/en'
import cn from './langs/cn'
Vue.use(VueI18n)
const messages = {
en: en,
cn: cn
}
const i18n = new VueI18n({
locale: 'cn', // 设置默认语言
messages
})
locale.i18n((key, value) => i18n.t(key, value)) //为了实现element插件的多语言切换
export default i18n
main.js
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css';
import i18n from './assets/i18n/i18n'
Vue.use(ElementUI);
new Vue({
el: '#app',
router,
i18n,
components: { App },
template: '<App/>'
})
4.使用
在页面中使用
<h1>{{$t('message.i1')}}</h1>
切换语言
this.$i18n.locale = 'en'
项目地址 欢迎star