计算 v-for 中 v-if 输出的总数

Count total of v-if output in v-for

我有这样的代码

<template>
  <div v-for="(item, i) in items" :key="i">
    <div v-for="(subitem, index) in subitems" :key="index" v- 
       if="item.id==subitem.item_id">
    {{count(subitem)}}
    </div>
  </div>
</template>
<script>
data() {
  return {
    items: [],
    subitems: [],
  }
}

watch: {

  items : async function() {
  const itm = await('get','/item')
  this.items = itm
    },

  subitems : async function() {
  const subitm = await('get','/sub_items')
  this.subitems = subitm

    },
},
</script>

项目和子项目数组从手表 属性 中的 api 提取中获取数组的值。每个子项值中都有项目 ID,如果子项的输出等于项目 ID,现在我想要每个 v 的计数或长度。怎么做?

谢谢

你不能把 v-for 和 v-if 放在同一个元素上,你能提供更多关于你的数组结构的信息吗?这样我就可以给你最好的方法,但是你可以根据我所拥有的创建获取项目和子项目后执行此功能

items.foreach((element)=>{
element.subitemCount=0;
subitem.foreach(item=>{
if(element.id==item.item_id){
element.subitemCount++;}}

对于你的 vuejs,你可以这样写

<div v-for="(item, i) in items" :key="i">  {{item.subitemCount}} </div>