i18n做全局中英文切换的方法

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做全局中英文切换的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e76112220837ffa6a5dddd3f8df78698.html