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

Wilma ·
更新时间:2024-09-20
· 544 次阅读

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



VUE vue-i18n 方法

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章