Bootstrap

vue取出数组里的某一字段,以逗号隔开拼接成字符串

if(res.code == 1) {
    this.tableData = res.data
    for (var i = 0; i < this.tableData.length; i++) {
        if (this.tableData[i].productJson.length > 1) {
            for (var k = 0; k < this.tableData[i].productJson.length; k++) {
                  this.str += this.tableData[i].productJson[k].goodsName + ","
            } 
            this.str= this.str.substring(0, this.str.lastIndexOf(','))
            this.tableData[i].goodsName = this.str
        } else {
             this.tableData[i].goodsName = this.tableData[i].productJson[0].goodsName
     }
  }
}

以上做法发现了一个bug,会把每次渲染出的字符串重新拼接在一起
在这里插入图片描述
换了种方式处理:

for (var i = 0; i < this.tableData.length; i++) {
     if (this.tableData[i].productJson.length > 1) {
        this.str = this.tableData[i].productJson.map(item => item.goodsName).join(",")
        this.tableData[i].goodsName = this.str
     } else {
        this.tableData[i].goodsName = this.tableData[i].productJson[0].goodsName
     }
}

在这里插入图片描述

;