命名空间模块中突变类型的定义

时间:2018-05-09 10:34:52

标签: vue.js vuejs2 vuex

我有一个名称空间的Vuex模块。如果我犯下如下突变:

this.$store.commit('myModuleName/' + mutationTypes.SOME_MUTATION_TYPE)

运作良好。但是,我导入了多个mutation-types.js个文件 获取定义良好的模块的变异名称,并且为了避免一直提到模块名称 - 我在mutation-types.js中提出了以下解决方案:

let prefix = 'myModuleName'
export const SOME_MUTATION_TYPE= prefix + 'SOME_MUTATION_TYPE'
//or as follows, the same result:
export const SOME_MUTATION_TYPE= 'myModuleName/SOME_MUTATION_TYPE'

如果我然后提交如下相同的突变:

this.$store.commit(mutationTypes.SOME_MUTATION_TYPE)

未提交变异并收到以下错误:

[vuex] unknown mutation type: myModuleName/SOME_MUTATION_TYPE

我提交的内容在两种情况下实际上是相同的,但是,在后一种情况下,我得到了错误。

为什么?这是我们可以解决的问题吗?或者什么是更好/常用的方式来实现它?

0 个答案:

没有答案