我想知道为什么不能将vuex getter与具有默认值的属性一起使用:
getters: {
getTest: (state, property = 'current') => {
return state.test[property]
}
}
当我像这样getTest.includes('something')
使用它时,它不起作用,但是如果我像这样getTest().includes('something')
使用它时,它起作用了吗?
由于没有使用任何参数,因此无需()
答案 0 :(得分:1)
https://vuex.vuejs.org/guide/getters.html#method-style-access
getters: {
getTest: (state) => (property = 'current') => {
return state.test[property]
}
}
// example usage
this.getTest().includes('something')
答案 1 :(得分:1)
吸气剂的第二个参数是其他吸气剂:
Getters还将收到其他getter作为第二个参数
(https://vuex.vuejs.org/guide/getters.html#property-style-access)
因此,您的property
参数将是一个数组,因此state.test[property]
总是返回undefined
要将getter用作带有参数的函数,需要使getter返回一个函数,如下所示:https://vuex.vuejs.org/guide/getters.html#method-style-access