vue对后台返回的对象数组数据使用find对前端的属性进行匹配
时间: 2024-02-09 14:12:08 浏览: 70
可以使用Vue中的计算属性和Array的`find()`方法来实现。
假设你有一个对象数组`list`和另一个属性`selectedItemId`,你想要从`list`中查找一个与`selectedItemId`匹配的对象,并将该对象赋值给`matchedItem`。可以像下面这样实现:
```html
<template>
<div>
<p>Selected item ID: {{ selectedItemId }}</p>
<p>Matched item: {{ matchedItem }}</p>
</div>
</template>
<script>
export default {
data() {
return {
list: [
{ id: 1, name: 'Apple' },
{ id: 2, name: 'Banana' },
{ id: 3, name: 'Cherry' }
],
selectedItemId: 2,
};
},
computed: {
matchedItem() {
return this.list.find(item => item.id === this.selectedItemId);
}
}
};
</script>
```
在上面的代码中,我们定义了一个计算属性`matchedItem`,它使用`list`和`selectedItemId`来查找匹配的对象。在`find()`方法中,我们使用箭头函数来定义一个回调函数,以便查找`list`中与`selectedItemId`具有相同`id`的对象。如果找到了匹配的对象,`find()`方法将返回该对象,否则返回`undefined`。最后,计算属性`matchedItem`将返回匹配的对象,以便在模板中显示。
可以根据具体情况对上面的代码进行修改,以适应你的需求。
阅读全文