我想按索引过滤对象数组。
<ul>
<li v-for="(list,index) in lists" v-bind:key="index"
@dblclick="deleteNote(index)">
{{list.note}
</li>
</ul>
列表中充满了imp
var lists = [];
var imp = {
note: "bla",
hinweis: "blub",
showNotiz: false
};
deleteNote(i) {
let arr = this.lists.filter(item =>
item.note !== this.lists[i]
);
this.lists = arr;
}
答案 0 :(得分:2)
我认为这会起作用
deleteNote(i) {
this.lists = this.lists.filter((_, index) => index !== i);
}
答案 1 :(得分:1)
您需要在过滤器函数中使用第二个参数。
let arr = this.lists.filter( (item, index) =>
item.note !== this.lists[index]
);
this.lists = arr;
以下是Filter的MDN文档
希望这会有所帮助!
答案 2 :(得分:0)
从外观上,您要按索引删除项目吗?
deleteNote(i) {
this.lists.splice(i, 1);
}
以上代码段应修改现有数组并删除所需索引处的一个元素。