【发布时间】:2021-10-29 09:38:15
【问题描述】:
我添加了自动导入 Vuex 模块,之后我无法从组件或我声明的其他地方转到 Vuex 操作/getters/etc。
现在我的架构是这样的:
- index.ts
- 商店
- module1.store.ts
- module2.store.ts
- module3.store.ts
- index.ts
存储/索引.ts:
const requireModule = require.context('.', false, /\.ts$/)
const modules: any = {}
requireModule.keys().forEach(fileName => {
if (fileName === './index.ts') return
const moduleName = fileName
.replace(/(\.\/|\.store\.ts)/g, '')
.replace(/^\w/, c => c.toLowerCase())
modules[moduleName] = requireModule(fileName).default || requireModule(fileName)
})
export default modules
index.ts(兄弟存储):
export default new Vuex.Store({
modules,
strict: debug,
plugins: debug ? [createLogger()] : []
})
如果我在组件中使用任何操作,这是可行的,但如果我想从组件中执行此操作,我不能:
每个商店模块都有:
export default {
namespaced: true,
state,
actions,
getters,
mutations
}
【问题讨论】: