Vuex 组合命名空间模块和常量类型
Vuex combining namespaced modules and constants types
我总是为 vuex 使用常量类型,例如
const SET_CATEGORY = 'setCategory'
但现在我想使用带有命名空间的模块,但我卡住了,我是否应该将名称(例如模块 'game')更改为
const SET_CATEGORY = 'game/setCategory'
?
当我这样做时,我的突变看起来 'game/game/setCategory'
。
我知道为什么它看起来像那样(因为我使用相同的常量类型来创建和调用突变)但不知道如何处理它。
我可以像这样调用突变
store.commit('game/${SET_CATEGORY}')
但这看起来不太好。
ps.Sorry 错误,我不是本地人。
干杯
使用命名空间时,您无需更改变更和操作名称。所以:
const SET_CATEGORY = 'setCategory' //stays the same
正如您所说的那样,在名为“游戏”的模块中引用此突变:
store.commit(`game/${SET_CATEGORY}`);
或
const moduleName = 'game';
store.commit(`${moduleName}/${SET_CATEGORY}`);
我总是为 vuex 使用常量类型,例如
const SET_CATEGORY = 'setCategory'
但现在我想使用带有命名空间的模块,但我卡住了,我是否应该将名称(例如模块 'game')更改为
const SET_CATEGORY = 'game/setCategory'
?
当我这样做时,我的突变看起来 'game/game/setCategory'
。
我知道为什么它看起来像那样(因为我使用相同的常量类型来创建和调用突变)但不知道如何处理它。
我可以像这样调用突变
store.commit('game/${SET_CATEGORY}')
但这看起来不太好。
ps.Sorry 错误,我不是本地人。
干杯
使用命名空间时,您无需更改变更和操作名称。所以:
const SET_CATEGORY = 'setCategory' //stays the same
正如您所说的那样,在名为“游戏”的模块中引用此突变:
store.commit(`game/${SET_CATEGORY}`);
或
const moduleName = 'game';
store.commit(`${moduleName}/${SET_CATEGORY}`);