console
var app = new Vue({
el: '#app',
data() {
return {
obj:{},
myArray: [[{ name: 'aa', num: 1 }, { name: 'bb', num: 3 }], [{ name: 'aa', num: 13 }, { name: 'cc', num: 3 }]],
}
},
mounted() {
this.myArray = this.myArray.flat()
this.myArray=this.getNewGoodsList(this.myArray)
},
methods: {
getNewGoodsList(skuArray) {
let temp = {};
for (let i of skuArray) {
let key = i.name;
if (temp[key]) {
temp[key].name = i.name;
temp[key].num += i.num;
} else {
temp[key] = {};
temp[key].name = i.name;
temp[key].num =i.num;
}
}
let newArry = [];
this.obj=temp
for (var k in temp) {
newArry.push(temp[k]);
}
return newArry;
},
}
});
<div id="app">
{{myArray}}
</br>
{{obj}}
</div>