From b008b9517241afcb51f4cfb3375f656327d971da Mon Sep 17 00:00:00 2001 From: marvzhang Date: Tue, 28 Jan 2020 09:52:57 +0800 Subject: [PATCH] =?UTF-8?q?fixed=20=E7=89=88=E6=9C=AC=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/App.vue | 6 ------ frontend/src/router/index.js | 9 +++++++- frontend/src/store/index.js | 4 +++- frontend/src/store/modules/version.js | 21 +++++++++++++++++++ .../views/layout/components/Sidebar/index.vue | 2 +- 5 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 frontend/src/store/modules/version.js diff --git a/frontend/src/App.vue b/frontend/src/App.vue index bf60dc0b..27fe283a 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -34,13 +34,7 @@ export default { } }, methods: {}, - async created () { - await this.$store.dispatch('setting/getSetting') - }, async mounted () { - const res = await this.$request.get('/version') - this.version = res.data.data - sessionStorage.setItem('v', this.version) window.setUseStats = (value) => { document.querySelector('.el-message__closeBtn').click() if (value === 1) { diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js index 666792f1..cb2d0af4 100644 --- a/frontend/src/router/index.js +++ b/frontend/src/router/index.js @@ -1,6 +1,8 @@ import Vue from 'vue' import Router from 'vue-router' +import store from '../store' +import request from '../api/request' import stats from '../utils/stats' /* Layout */ @@ -257,8 +259,13 @@ router.beforeEach((to, from, next) => { } }) -router.afterEach((to, from, next) => { +router.afterEach(async (to, from, next) => { if (to.path) { + await store.dispatch('setting/getSetting') + const res = await request.get('/version') + const version = res.data.data + store.commit('version/SET_VERSION', version) + sessionStorage.setItem('v', version) stats.sendPv(to.path) } }) diff --git a/frontend/src/store/index.js b/frontend/src/store/index.js index d6cdf11f..39c3bf18 100644 --- a/frontend/src/store/index.js +++ b/frontend/src/store/index.js @@ -14,6 +14,7 @@ import lang from './modules/lang' import site from './modules/site' import stats from './modules/stats' import setting from './modules/setting' +import version from './modules/version' import getters from './getters' Vue.use(Vuex) @@ -33,7 +34,8 @@ const store = new Vuex.Store({ lang, site, setting, - // 百度统计 + version, + // 统计 stats }, getters diff --git a/frontend/src/store/modules/version.js b/frontend/src/store/modules/version.js new file mode 100644 index 00000000..873f21bd --- /dev/null +++ b/frontend/src/store/modules/version.js @@ -0,0 +1,21 @@ +const state = { + version: '' +} + +const getters = {} + +const mutations = { + SET_VERSION: (state, value) => { + state.version = value + } +} + +const actions = {} + +export default { + namespaced: true, + state, + getters, + mutations, + actions +} diff --git a/frontend/src/views/layout/components/Sidebar/index.vue b/frontend/src/views/layout/components/Sidebar/index.vue index 34679a77..1123d332 100644 --- a/frontend/src/views/layout/components/Sidebar/index.vue +++ b/frontend/src/views/layout/components/Sidebar/index.vue @@ -49,7 +49,7 @@ export default { return !this.sidebar.opened }, version () { - return window.sessionStorage.getItem('v') + return this.$store.state.version.version || window.sessionStorage.getItem('v') } }, data () {