扒拉一个项目的vuex看着比较舒服,
1、文件名作为module 名
store
├── index.js // 添加到vue中
└── modules
└── d2admin
├── index.js // 将文件内容给模块
└── modules
├── account.js
├── db.js
├── fullscreen.js
├── gray.js
├── log.js
├── menu.js
├── page.js
├── releases.js
├── search.js
├── size.js
├── theme.js
├── transition.js
├── ua.js
└── user.js
2、将文件内容给模块-》生成modules
// src/store/store/modules/d2admin
const files = require.context('./modules', false, /\.js$/)
const modules = {}
files.keys().forEach(key => {
console.log(files(key))
modules[key.replace(/(\.\/|\.js)/g, '')] = files(key).default
console.log(modules)
})
export default {
namespaced: true,
modules
}
3、添加到vue中
import Vue from 'vue'
import Vuex from 'vuex'
import d2admin from './modules/d2admin'
Vue.use(Vuex)
export default new Vuex.Store({
modules: {
d2admin
}
})
参考: require.context(’./modules’, false, /.js$/)
项目解读:ice D2