From ef0c4da357514f6ddbc42e6717099f3aa5eea1ca Mon Sep 17 00:00:00 2001 From: Bowen Date: Mon, 8 Oct 2018 20:59:36 +0800 Subject: [PATCH] fix: correct redundant initial request(set init tag) --- src/store/modules/analysis/actions.js | 1 + src/store/modules/analysis/mutations/index.js | 3 +++ src/store/modules/analysis/mutations/types.js | 15 ++++++++------- src/store/modules/analysis/state.js | 1 + src/view/Dashboard/Analysis.vue | 3 ++- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/store/modules/analysis/actions.js b/src/store/modules/analysis/actions.js index f8536d3..226856f 100644 --- a/src/store/modules/analysis/actions.js +++ b/src/store/modules/analysis/actions.js @@ -5,6 +5,7 @@ export default { fetchAnalysis ({ commit }) { fetchAllAnalysis().then(res => { const data = res.data + commit(types.SET_INIT) commit(types.SET_SALES, data.sales) commit(types.SET_VISITORS, data.visitors) commit(types.SET_PAYMENTS, data.payments) diff --git a/src/store/modules/analysis/mutations/index.js b/src/store/modules/analysis/mutations/index.js index 1f5e4e9..8a18f9d 100644 --- a/src/store/modules/analysis/mutations/index.js +++ b/src/store/modules/analysis/mutations/index.js @@ -1,6 +1,9 @@ import types from './types' export default { + [types.SET_INIT] (state) { + state.init = true + }, [types.SET_SALES] (state, sales) { state.sales = sales }, diff --git a/src/store/modules/analysis/mutations/types.js b/src/store/modules/analysis/mutations/types.js index 2edcdb4..8de6796 100644 --- a/src/store/modules/analysis/mutations/types.js +++ b/src/store/modules/analysis/mutations/types.js @@ -1,9 +1,10 @@ export default { - 'SET_SALES': 'SET_SALES', - 'SET_VISITORS': 'SET_VISITORS', - 'SET_PAYMENTS': 'SET_PAYMENTS', - 'SET_OPERATIONS': 'SET_OPERATIONS', - 'SET_RANK_LIST': 'SET_RANK_LIST', - 'SET_SEARCH_DATA': 'SET_SEARCH_DATA', - 'SET_SALES_TYPE': 'SET_SALES_TYPE' + SET_SALES: 'SET_SALES', + SET_VISITORS: 'SET_VISITORS', + SET_PAYMENTS: 'SET_PAYMENTS', + SET_OPERATIONS: 'SET_OPERATIONS', + SET_RANK_LIST: 'SET_RANK_LIST', + SET_SEARCH_DATA: 'SET_SEARCH_DATA', + SET_SALES_TYPE: 'SET_SALES_TYPE', + SET_INIT: 'SET_INIT' } diff --git a/src/store/modules/analysis/state.js b/src/store/modules/analysis/state.js index 69d9764..3597732 100644 --- a/src/store/modules/analysis/state.js +++ b/src/store/modules/analysis/state.js @@ -1,6 +1,7 @@ // store.state basic schema export default { + init: false, sales: { trend: [ { diff --git a/src/view/Dashboard/Analysis.vue b/src/view/Dashboard/Analysis.vue index 536b0fa..f628c54 100644 --- a/src/view/Dashboard/Analysis.vue +++ b/src/view/Dashboard/Analysis.vue @@ -162,6 +162,7 @@ export default { return this.formatData(this.sales.totalDetails, ['month', 'total']) }, ...mapState('analysis', [ + 'init', 'sales', 'visitors', 'payments', @@ -171,7 +172,7 @@ export default { }, created () { - this.fetchAnalysis() + !this.init && this.fetchAnalysis() }, methods: {