封装的合并的函数
function formateArray(data:any){
// @ts-ignore
let res = data.reduce((ac,a) => {
// @ts-ignore
let index = ac.findIndex(x => x.id === a.id);
index === -1 ? ac.push({...a}) : ac[index] = {...ac[index],...a};
return ac;
},[])
return res;
}
使用
- allData 原始数据 图片可以看到数据id相同,其中有字段不一致的,统一将相同id的数据合并成一条数据字段不一致也统一合并;
使用函数
const mergeData = formateArray(allData);
console.log('合并之后的数据',mergeData)