我有一个Vuex Getter,我在我的应用程序的各个组件中调用它。然而,我发现在调用getter之前需要进行略微复杂的逻辑处理,因此我使用了一个Vuex Action。如何从我的Action中带一个参数来调用Getter函数?
我为Getter/ Mutation/Action命名使用常量,因此我的Getter定义如下:
从组件中调用Getter可以完美地工作。我只需创建一个计算函数并使用
getter被调用,但它返回函数而没有传入参数。我是做错了什么还是对vuex中getter的工作方式有误解?
我为Getter/ Mutation/Action命名使用常量,因此我的Getter定义如下:
[GETTER_NAME]: state => param => { return {/.../} }
。在我的Vuex Action中,我想要这样调用Getter:getters[GETTER_NAME](someParam)
。然而,这似乎不起作用(即使getters[GETTER_NAME]
返回一个函数)。从组件中调用Getter可以完美地工作。我只需创建一个计算函数并使用
...mapGetters({ getterName: GETTER_NAME })
。要带参数调用Getter,我只需说getterName(someParam)
。[GETTER_NAME]: state => param=> {
return {/.../}
},
[ACTION_NAME]: (context, param) => {
getters[GETTER_NAME](param)
? context.commit(MUTATION_X, param)
: context.commit(MUTATION_Y, param);
}
getter被调用,但它返回函数而没有传入参数。我是做错了什么还是对vuex中getter的工作方式有误解?