将数组相同对象放入中的对象整合放入一个数组对象里
modelDatareset(arr, str) {
var _arr = [],
_t = [],
// 临时的变量
_tmp
// 按照特定的参数将数组排序将具有相同值得排在一起
arr = arr.sort(function (a, b) {
var s = a[str],
t = b[str]
return s < t ? -1 : 1
})
if (arr.length) {
_tmp = arr[0][str]
}
// 将相同类别的对象添加到统一个数组
for (var i in arr) {
if (arr[i][str] === _tmp) {
_t.push(arr[i])
} else {
_tmp = arr[i][str]
_arr.push(_t)
_t = [arr[i]]
}
}
// 将最后的内容推出新数组
_arr.push(_t) //获取到所有整合数据
// 终极整合
var integration = []
_arr.forEach((item) => {
var eee = { label: '', value: '', children: [] }
item.forEach((self) => {
if (eee.label != self.brandName) {
eee.label = self.brandName
eee.value = self.brandId
let obj = {
label: self.name,
value: self.id,
}
eee.children.push(obj)
} else {
let obj = {
label: self.name,
value: self.id,
}
eee.children.push(obj)
}
})
integration.push(eee)
})
return integration
},


浙公网安备 33010602011771号