我有一个基于Vue和Vuex的小应用程序。它只是一个包含这样的项目的表
<div class='items'>
<div v-for='item in items'>
<span> {{ item.name }} </span>
<router-link :to='"update/" + item.id'>Edit</router-link>
</div>
</div>
使用getter从Vuex状态加载Items数组。所以问题是,当我按下编辑&#39;按钮,它将我重定向到另一个页面,我有一个像这样的功能
computed() {
item() {
return this.$store.getters.get_item(this.$route.params.id)
}
}
并且通常它应该工作(我通过传递一些数字而不是&#34来测试它;这个。$ route.params.id&#34;)但它不是......为什么?没有错误,没有,只是空数组
我的get_item函数
getters: {
get_item: (state) => (index) => {
return state.items.filter((item) => {
return item.id === index
}
}
}
答案 0 :(得分:2)
您将computed
定义为函数,而它应该是一个对象。请尝试改为:
computed: {
item() {
return this.$store.getters.get_item(this.$route.params.id)
}
}