应用九:Vue之国际化(vue-i18n)

Posted fengyuexuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了应用九:Vue之国际化(vue-i18n)相关的知识,希望对你有一定的参考价值。

 

vue-i18n是一款针对Vue.js 的国际化插件,具体应用步骤如下:

 

一、安装插件

npm install vue-i18n --save

 

二、main.js中引入插件

import VueI18n from ‘vue-i18n‘

Vue.use(VueI18n)

 

三、创建i18n实例

const i18n = new VueI18n({ 
 // 默认语言
 locale: ‘zh‘,
 // 引入对应的语言包文件
 messages: {   
    ‘zh‘: require(‘@/assets/languages/zh.json‘),   
    ‘en‘: require(‘@/assets/languages/en.json‘) 
  }
});

  注:为了在页面刷新后仍然能够保持当前的语言环境,一般会将语言参数缓存到localStorage中,locale属性的初始赋值方式会变为 locale: localStorage.getItem(‘lang’) || ‘zh’

 

四、assets目录下新建对应的语言json文件

// zh.json
{
  "message": {
    "greeting": "你好"
  }
}

// en.json
{
  "message": {
    "greeting": "hello"
  }
}

  注:json文件中的key值必须使用双引号。

 

五、使用

// 在template中的使用方式: 
<span>{{$t(‘message.greeting‘)}}</span>

// 在script脚本中的使用方式:
this.$t(‘message.greeting‘)

 

六、语言切换

  语言切换只要改变i18n实例中locale的值即可:

this.$i18n.locale = ‘en’;
localStorage.setItem(‘lang’, ‘en’)

 

  上述呢就是vue国际化的基础用法~

以上是关于应用九:Vue之国际化(vue-i18n)的主要内容,如果未能解决你的问题,请参考以下文章

2分钟入门了解vue-i18n

vue项目国际化(使用vue-i18n)

vue中使用vue-i18n 一个简单的国际化操作

vue-i18n国际化在data中切换不起作用

vue-i18n和ElementUI国际化使用总结

vue-i18n实现vue对语言切换,国际化。