一、vue-i18n安裝vue
npm install vue-i18n --save-devnpm
二、在main.js文件中引入緩存
import VueI18n from 'vue-i18n';app
Vue.use(VueI18n);ui
const i18n = new VueI18n({this
locale: localStorage.getItem('language')||'zh', //使用localStorage緩存到本地,當下次使用時可默認當前使用語言component
messages: {
' zh': require('./common/lang/zh'),
'en': require('./common/lang/en')
}
})router
new Vue({
el: '#app',
router,
i18n,
template: '<App/>',
components: { App }
})get
三、新建中英文語言文件import
zh.js:
module.exports = {
language: {
name: 'English'
},
navbar: {
home: '首頁',
}
}
en.js:
module.exports = {
language: {
name: '中文'
},
navbar: {
home: 'Home',
}
}
四、建立一個切換語言方法(寫在App.vue能夠全局控制);
changeLang() {
let locale = localStorage.getItem('language')||'zh';
let temp=locale === 'zh' ? 'en' : 'zh';
this.$i18n.locale=temp;//改變當前語言
localStorage.language=temp;
}
五、在template中的使用:
<p>{{ $t('language.name') }}</p> <p>{{ $t('navbar.contact') }}</p>