问题描述:
后台无法给想要的数据格式,
想要的数据格式:
listData:[
{
title:"甲醇",
place:['陕西','西安'],
value:['12345.3','36985.6']
},
{
title:"乙烯",
place:['武汉','安徽'],
value:['568945.154','7856452.32']
}
]
后台给的数据格式:
newval:[
{
title:"甲醇",
place:"陕西",
value:123450.6
},
{
title:"甲醇",
place:"西安",
value:36985.6
},
{
title:"乙烯",
place:"武汉",
value:568945.154
},
{
title:"甲醇",
place:"安徽",
value:7856452.32
},
]
解决方案:
循环获得的数据并且进行赋值dataList(newVal,oldVal){
// console.log(newVal)
var map = {},dest=[]
for(var i = 0;i < newVal.length;i++){
var list = newVal[i];
if(!map[list.title]){
dest.push({
title:list.title,
place:[list.place],
value:[list.value]
});
map[list.title] = list;
}else{
for(var j = 0;j < dest.length;j++){
var clist = dest[j];
if(clist.title == list.title){
clist.place.push(list.place)
clist.value.push(list.value)
break
}
}
}
// console.log(map,'123456')
}
this.listData = dest
// console.log(this.listData,'123')
// console.log(dest,'456')
this.drawchanpinEchart()
}