Vue国际化使用的是vue-i18n组件,需要先进行安装:
npm install vue-i18n
安装完成后,在main.js文件中使用,
main.js完整内容如下:
import Vue from 'vue';
import App from './App';
import router from './router';
import store from './store';
import './icons'; // icon
import iView from 'iview';
import 'iview/dist/styles/iview.css'; // iview style
import 'animate.css/animate.min.css';
import zhLocale from 'iview/src/locale/lang/zh-CN';//导入iview中文语言包
import enLocale from 'iview/src/locale/lang/en-US';//导入iview英文语言包
import VueI18n from 'vue-i18n';
Vue.use(VueI18n);//使用vue-i18n
Vue.use(iView);
global.Hub = new Vue();
const i18n = new VueI18n({
locale: '中文', // 语言标识,表示当前选择的语言
// this.$i18n.locale // 通过切换locale的值来实现语言切换
messages: {
'中文': Object.assign(zhLocale, require('./utils/lang/zh')), // 中文语言包,第二个参数为自定义的语言
'English': Object.assign(enLocale, require('./utils/lang/en')) // 英文语言包
}
});
Vue.locale = () => {}; // iview组件国际化不可缺少的部分
new Vue({
el: '#app',
router,
store,
i18n,
template: '<App/>',
components: { App }
});