如何在Vuex的getter函数中调用getter函数
Posted
技术标签:
【中文标题】如何在Vuex的getter函数中调用getter函数【英文标题】:How to call getter function inside getter function in Vuex 【发布时间】:2018-02-09 18:59:55 【问题描述】:import Vue from 'vue'
import Vuex from 'vuex'
import createModule from 'vuex-toast'
import 'vuex-toast/dist/vuex-toast.css'
Vue.use(Vuex)
const store = new Vuex.Store(
modules:
toast: createModule(
dismissInterval: 80000
),
app:
state:
raps: [],
,
getters:
getRaps ()
return store.state.app.raps
,
getRapsFiltered (state, getters) //error happens in this func
return getters.getRaps.filter(state.filterFunc)
)
export default store
我收到错误消息“未捕获的 TypeError:null 不是函数”。 如何在getter中调用getter函数? 这段代码似乎有什么问题?
【问题讨论】:
state.filterFunc
没有定义吗?
谢谢,它是空的
【参考方案1】:
您可以使用传递给 getter 函数的 getters 参数调用 getter
const getters =
calculateItemTax: () => item =>
return item.item_tax
,
//pass getters as an argument and use it inside getter
orderTax: (state, getters) =>
state.items.forEach(item =>
//use getters argument to access getters functions
taxAmount += getters.calculateItemTax(item)
)
return taxAmount
,
【讨论】:
以上是关于如何在Vuex的getter函数中调用getter函数的主要内容,如果未能解决你的问题,请参考以下文章