index.js 515 B

123456789101112131415161718192021
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. import getters from './getters'
  4. Vue.use(Vuex)
  5. // 自动加载所有模块
  6. const modulesFiles = require.context('./modules', true, /\.js$/)
  7. const modules = modulesFiles.keys().reduce((modules, modulePath) => {
  8. const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
  9. const value = modulesFiles(modulePath)
  10. modules[moduleName] = value.default
  11. return modules
  12. }, {})
  13. const store = new Vuex.Store({
  14. modules,
  15. getters
  16. })
  17. export default store