From 2e90b7c6149959bd2fd9ae985442781d0d27b8a3 Mon Sep 17 00:00:00 2001 From: iczer <1126263215@qq.com> Date: Tue, 23 Jun 2020 22:05:29 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20add=20page=20layout=20i18n=20language?= =?UTF-8?q?=20config.=20=E5=A2=9E=E5=8A=A0=E9=A1=B5=E9=9D=A2=E5=B8=83?= =?UTF-8?q?=E5=B1=80=E7=9A=84=E5=9B=BD=E9=99=85=E5=8C=96=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 22 ++++++++++++++++++++-- src/components/menu/SiderMenu.vue | 13 +++++-------- src/components/menu/menu.js | 1 + src/components/page/PageHeader.vue | 13 ++++++++++--- src/layouts/GlobalHeader.vue | 10 ++++------ src/layouts/PageLayout.vue | 13 ++++++------- src/layouts/PageView.vue | 16 +++++++++++++--- src/router/i18n.js | 7 +++++++ src/store/modules/setting.js | 6 +++++- 9 files changed, 71 insertions(+), 30 deletions(-) diff --git a/src/App.vue b/src/App.vue index 00ddb11..f77ecbf 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,15 +1,21 @@ diff --git a/src/components/menu/menu.js b/src/components/menu/menu.js index 9bed16e..e0dc9b7 100644 --- a/src/components/menu/menu.js +++ b/src/components/menu/menu.js @@ -87,6 +87,7 @@ export default { this.$i18n.mergeLocaleMessage(key, this.i18n[key]) }) } + this.$emit('i18nComplete', this.$i18n._getMessages()) }, created () { this.updateMenu() diff --git a/src/components/page/PageHeader.vue b/src/components/page/PageHeader.vue index bf4a873..59d4aea 100644 --- a/src/components/page/PageHeader.vue +++ b/src/components/page/PageHeader.vue @@ -4,8 +4,8 @@ @@ -46,7 +46,14 @@ export default { avatar: { type: String, required: false - } + }, + i18n: Object + }, + created() { + let i18n = this.i18n + Object.keys(i18n).forEach(key => { + this.$i18n.mergeLocaleMessage(key, i18n[key]) + }) }, computed: { layout () { diff --git a/src/layouts/GlobalHeader.vue b/src/layouts/GlobalHeader.vue index 0d2f1c6..200a60e 100644 --- a/src/layouts/GlobalHeader.vue +++ b/src/layouts/GlobalHeader.vue @@ -8,7 +8,7 @@
- +
@@ -23,7 +23,7 @@
- + cn 简体中文 hk 繁体中文 us English @@ -39,7 +39,7 @@ import HeaderSearch from './HeaderSearch' import HeaderNotice from './HeaderNotice' import HeaderAvatar from './HeaderlAvatar' import IMenu from '../components/menu/menu' -import {mapState} from 'vuex' +import {mapState, mapMutations} from 'vuex' export default { name: 'GlobalHeader', @@ -64,9 +64,7 @@ export default { onSelect (obj) { this.$emit('menuSelect', obj) }, - changeLang(lang) { - this.$store.commit('setting/setLang', lang.key) - } + ...mapMutations('setting', ['setLang', 'setRoutesI18n']) } } diff --git a/src/layouts/PageLayout.vue b/src/layouts/PageLayout.vue index ef09922..ad5df11 100644 --- a/src/layouts/PageLayout.vue +++ b/src/layouts/PageLayout.vue @@ -1,10 +1,10 @@