当前位置: 移动技术网 > IT编程>脚本编程>vue.js > vue 使用vue-i18n做全局中英文切换的方法

vue 使用vue-i18n做全局中英文切换的方法

2018年11月05日  | 移动技术网IT编程  | 我要评论

王安石资料,2012元宵喜乐会湖南卫视,铜带

1、vue-i18n安装  

npm install vue-i18n --save-dev

2、在main.js文件中引入 

import vuei18n from 'vue-i18n';
  vue.use(vuei18n);
  const i18n = new vuei18n({
    locale: localstorage.getitem('language')||'zh', //使用localstorage缓存到本地,当下次使用时可默认当前使用语言
    messages: {
 '      zh': require('./common/lang/zh'),
      'en': require('./common/lang/en')
    }
  })
  new vue({
    el: '#app',
    router,
    i18n,
    template: '<app/>',
    components: { app }
  })

3、新建中英文语言文件

  zh.js:

module.exports = {

    language: {
      name: 'english'
    },
    navbar: {
      home: '首页',
    }
  }

  en.js: 

module.exports = {

    language: {
      name: '中文'
    },
    navbar: {
      home: 'home',
    }
  }

4、创建一个切换语言方法(写在app.vue可以全局控制);

 changelang() {
    let locale = localstorage.getitem('language')||'zh';
    let temp=locale === 'zh' ? 'en' : 'zh';
    this.$i18n.locale=temp;//改变当前语言
     localstorage.language=temp;
  }

5、在template中的使用: 

 <p>{{ $t('language.name') }}</p>
  <p>{{ $t('navbar.contact') }}</p>

总结

以上所述是小编给大家介绍的vue 使用vue-i18n做全局中英文切换的方法,希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网