在第一个组件中,我有一个函数使用存储在 VueX 中的值更改数组
methods: {
//get a function that changes the pickedlist array that is stored in vuex store
...mapActions([
'updatePickedDates'
]),
...mapGetters([
'dates'
]),
resetArray() {
this.updatePickedDates(this.dates}
}
在另一个组件中
我使用来自 VueX 的 getter,它在这个数组上传递:
computed: {
...mapGetters(["managementNews"])
}
但是,当resetArray()函数运行时,我得到错误
state.pickedDates.includes is not a function
以下是我的 VueX 商店中的 getter 和 mutation:
mutations: {
mutatePickedDates: (state, payload) => {
state.pickedDates=payload
}
},
actions: {
updatePickedDates({commit}, payload) {
commit('mutatePickedDates', payload)
}
},
modules: {
},
getters : {
//get news that are of type management
managementNews: function(state) {
return state.news.filter(i => i.type === "management" && state.pickedDates.includes(i.date));
},
dates: state => {
return state.dates
},
pickedDates: state => {
return state.pickedDates
}
},