From 3bf66ee23bc2c687175398a849ff45a418da703b Mon Sep 17 00:00:00 2001 From: Pan Date: Thu, 4 Apr 2019 13:57:06 +0800 Subject: [PATCH] refine --- src/lang/index.js | 2 ++ src/layout/components/Sidebar/index.vue | 1 + src/store/index.js | 19 +++++++++++++------ src/store/modules/errorLog.js | 1 - src/store/modules/tagsView.js | 1 - 5 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/lang/index.js b/src/lang/index.js index 4a0f52cb..c443f41b 100644 --- a/src/lang/index.js +++ b/src/lang/index.js @@ -27,6 +27,8 @@ const messages = { export function getLanguage() { const chooseLanguage = Cookies.get('language') if (chooseLanguage) return chooseLanguage + + // if has not choose language const language = (navigator.language || navigator.browserLanguage).toLowerCase() const locales = Object.keys(messages) for (const locale of locales) { diff --git a/src/layout/components/Sidebar/index.vue b/src/layout/components/Sidebar/index.vue index 80b39347..f02a4819 100644 --- a/src/layout/components/Sidebar/index.vue +++ b/src/layout/components/Sidebar/index.vue @@ -22,6 +22,7 @@ import { mapGetters } from 'vuex' import Logo from './Logo' import SidebarItem from './SidebarItem' import variables from '@/styles/variables.scss' + export default { components: { SidebarItem, Logo }, computed: { diff --git a/src/store/index.js b/src/store/index.js index 1e0b54ac..476fbcc8 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -3,13 +3,20 @@ import Vuex from 'vuex' import getters from './getters' Vue.use(Vuex) + +// https://webpack.js.org/guides/dependency-management/#require-context const modulesFiles = require.context('./modules', false, /\.js$/) -const modules = {} -modulesFiles.keys().forEach(item => { - const key = item.replace(/^\.\/(.*)\.\w+$/, '$1') - const value = modulesFiles(item) - modules[key] = value.default -}) + +// you do not need `import app from './modules/app'` +// it will auto require all vuex module from modules file +const modules = modulesFiles.keys().reduce((acc, cur) => { + // set './app.js' => 'app' + const key = cur.replace(/^\.\/(.*)\.\w+$/, '$1') + const value = modulesFiles(cur) + acc[key] = value.default + return acc +}, {}) + const store = new Vuex.Store({ modules, getters diff --git a/src/store/modules/errorLog.js b/src/store/modules/errorLog.js index c97d452a..8e3db060 100644 --- a/src/store/modules/errorLog.js +++ b/src/store/modules/errorLog.js @@ -1,4 +1,3 @@ - const state = { logs: [] } diff --git a/src/store/modules/tagsView.js b/src/store/modules/tagsView.js index 5cbe32f3..3e2c1703 100644 --- a/src/store/modules/tagsView.js +++ b/src/store/modules/tagsView.js @@ -1,4 +1,3 @@ - const state = { visitedViews: [], cachedViews: []