vue-element-admin——命名空间导致错误[unknown action type:XXX]解决方案
原理:不知道
我是在vue-element-admin项目的中文分支上写的,英文分支就是不能使用:this.$store.dispatch,所以靠直觉觉得index.js文件应该不同,一看还真是,当场人傻了,又是两个小时秃头
将store文件中的index.js文件修改为以下代码:
import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'
Vue.use(Vuex)
// https://webpack.js.org/guides/dependency-management/#requirecontext
const modulesFiles = require.context('./modules', true, /\.js$/)
// you do not need `import app from './modules/app'`
// it will auto require all vuex module from modules file
const modules = modulesFiles.keys().reduce((modules, modulePath) => {
// set './app.js' => 'app'
const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
const value = modulesFiles(modulePath)
modules[moduleName] = value.default
return modules
}, {})
const store = new Vuex.Store({
modules,
getters
})
export default store
更多推荐
所有评论(0)