vue 项目的国际化处理

 

 

1.下载国际化依赖的包:npm install vue-i18n

2.main.js文件引入国际化文件:

import VueI18n from 'vue-i18n'

Vue.use(VueI18n) // 通过插件的形式挂载

const i18n = new VueI18n({
    locale: 'zh-CN',    // 语言标识
    //this.$i18n.locale // 通过切换locale的值来实现语言切换
    messages: {
          'zh-CN': require('./language/zh'),   // 中文语言包
          'en-US': require('./language/en'),    // 英文语言包
          'ja-japan': require('./language/japanese'),    // 日语语言包
          'ko-korean': require('./language/korean')    // 韩语语言包
    }
})

/* eslint-disable no-new */
new Vue({
  el: '#app',
  i18n,  // 不要忘记
  store,
  router,
  template: '<App/>',
  components: { App }
})

 

3.创建国际化文件,如图:

export const lang = {
  app:{
    toplang:'语言',
    complaint:'游客投诉',
    help:'帮助中心',
    tel:'服务电话',
    link:'友情链接',
    copy:'Copyright©版权所有',
  },
}

 

4.切换语言:

html:

在页面中的显示:$t('lang.app.toplang')

       <div class="lang">
            <div class="top-language">
              <div class="lang-text">{{$t('lang.app.toplang')}}:</div>
              <div v-for="it in languageImg" @click="changeLangEvent(it.lang)" class="lang-img">
                <img :src="it.img" alt="" class="imgs">
              </div>
            </div>
          </div>

 数据源声明:

       languageImg: [
          {img: '../static/img/all/en.png', lang: 'en-US'},
          {img: '../static/img/all/ja.png', lang: 'ja-japan'},
          {img: '../static/img/all/ke.png', lang: 'ko-korean'},
          {img: '../static/img/all/ch.png', lang: 'zh-CN'},
        ],

 切换不同的国家化语言

     //切换语言
      changeLangEvent(lang) {
        this.$i18n.locale = lang;//关键语句
      },

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值