具有多个模块的 Vuex rootActions
Vuex rootActions with several modules
我在客户端有一个vuejs,我在其中使用vuex 进行状态管理。我有几个模块(在单独的文件中),但其中一些模块具有非常相似的操作,这就是我想要创建 dry code 的原因。
我的目标:创建一个根动作,每个模块都可以调用。
我的主 vuex 是这样的:
export default new Vuex.Store({
actions: {
rootactions,
},
modules: {
users,
classes,
studentgroups,
// ... other stuff
}
})
我应该如何引用 rootactions 方法?
提前感谢您的回复!
如何使用常用操作创建一个单独的文件RootActions.js
export default {
action1: () => {
//
},
action2: () => {
//
},
}
然后将其导入到您的模块文件中,例如User.js
import RootActions from './RootActions'
const state = {
// state object
}
const mutations = {
// mutations object
}
const actions = {
// actions object
}
export default {
namespaced: true,
state,
mutations,
actions: Object.assign(RootActions, actions)
}
"To dispatch actions or commit mutations in the global namespace, pass { root: true } as the 3rd argument to dispatch and commit."
{
根:真
}
我在客户端有一个vuejs,我在其中使用vuex 进行状态管理。我有几个模块(在单独的文件中),但其中一些模块具有非常相似的操作,这就是我想要创建 dry code 的原因。
我的目标:创建一个根动作,每个模块都可以调用。
我的主 vuex 是这样的:
export default new Vuex.Store({
actions: {
rootactions,
},
modules: {
users,
classes,
studentgroups,
// ... other stuff
}
})
我应该如何引用 rootactions 方法?
提前感谢您的回复!
如何使用常用操作创建一个单独的文件RootActions.js
export default {
action1: () => {
//
},
action2: () => {
//
},
}
然后将其导入到您的模块文件中,例如User.js
import RootActions from './RootActions'
const state = {
// state object
}
const mutations = {
// mutations object
}
const actions = {
// actions object
}
export default {
namespaced: true,
state,
mutations,
actions: Object.assign(RootActions, actions)
}
"To dispatch actions or commit mutations in the global namespace, pass { root: true } as the 3rd argument to dispatch and commit."
{ 根:真 }