亲宝软件园·资讯

展开

vue table里数组多层嵌套取值

神探小白牙 人气:0

vue table表格里面数组多层嵌套取值

我现在是在表格里拿到级联选择器的多选的id,然后要根据这个id来匹配一个嵌套了三层的数组的第三层id,来拿名字渲染

表格部分

<tr style="height: 44px;line-height: 44px;">
                <td style="border: 1px solid #ddd;">提醒给</td>
                <td style="border: 1px solid #ddd;">
                  <!-- {{editForm.uids.toString().split(',')}} -->
                  <span v-for="item in editForm.uids.toString().split(',')" :key="item.id">
                    <!-- <p>{{dataHandle(editForm.uids)}}</p> -->
                    <p>{{dataHandle(item)}}</p>
                  </span>
                </td>
              </tr>
``

methods里面定义方法

 // 提醒给点击事件
dataHandle(item) {
   let ary = []
 let name = ''
  let result = getUserName(this.options4)
  result.forEach(v2 => {
    if (item == v2.id) {
      name = v2.corp_name
    }
  })
  return name
  
  function getUserName(item) {
    item.forEach(v1 => {
      if (v1.children) return getUserName(v1.children)
      else {
        ary.push(v1)
      }
    })
    return ary
  }
},

vue 多层数组嵌套循环,动态取值匹配

tableData:[], //存储数组
arrTarName:[] //结果数组
 
this.tableData.push({
  siteName:i.siteName,
  tabdata:result.data
}); 
 
//循环+判断取值
for (let k = 0; k < result.data.length; k++) {
    if (this.arrTarName.length == 0) {
        this.arrTarName.push({
            indexName: result.data[k].indexName,
            polTracesouCount: result.data[k].polTracesouCount
        })
    } else {
        let isExist = false;
        for (let l = 0; l < this.arrTarName.length; l++) {
            if (this.arrTarName[l].indexName == result.data[k].indexName) {
                isExist = true;
                this.arrTarName[l].polTracesouCount = this.arrTarName[l].polTracesouCount + result.data[k].polTracesouCount;
                break;
            }
        }
        if (!isExist) {
            this.arrTarName.push({
                indexName: result.data[k].indexName,
                polTracesouCount: result.data[k].polTracesouCount
            })
        }
    }
}
console.log(this.arrTarName)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

加载全部内容

相关教程
猜你喜欢
用户评论