vue-i18n和elementUI实现国际化

为了满足很多公司都已经向international方向发展,顾使用多语言的网站已经太普遍了, 所以是使用vue-i18n和elementUI实现国际化.接下来我会尽量写的详细一点:

element-ui的i18n内容 个人觉得的应该写得清楚一些

1.安装所需要用到的东西

npm i element-ui -S  // 安装element

npm install --save vue-i18n //安装i18n

2. 创建目录

目录.png

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。