有这样一组数据
data:{ "a":[ { id:'1' }, { id:'2' }, { id:'3' }, { id:'4' } ], "b":[ '1', '3' ] }
用什么方法可以判断出a中的id包含b中的数据
因为需要用v-for遍历 展示出1234,如果b里有的 则不展示
已解决
悬赏分:20
- 解决时间 2021-11-26 20:37
点赞 0反对 0举报 0
收藏 0
分享 0
回答5
最佳
-
取相同: a.filter(v => b.includes(v.id))
取不同: a.filter(v => !b.includes(v.id))支持 0 反对 0 举报2021-11-26 04:27
-
循环a 每项加个状态 a[i].status=true
里面判断 b.indexOf(a[i].id)>-1 true说明b中存在 a[i].status=false
v-for循环根据status 展示支持 0 反对 0 举报2021-11-26 05:39
-
{ computed: { bset() { return new Set(this.b) } } }
判断时 v-if="bset.has(aitem.id)"
支持 0 反对 0 举报2021-11-26 07:16
-
对a进行v-for循环的时候判断一下每一项的id是否包含在b中
比如<div v-for='item in a' :key='item.id' v-if='!b.includes(item.id)'></div>
大致就是这样
支持 0 反对 0 举报2021-11-26 08:43