今天收到一个需求,是和echarts有关的,不过并不是调整echarts,而是传给echarts的数据要做调整。
// 从后端接收到的数据类似这样:
[
{statename: 'a', num: 1},
{statename: 'b', num: 2},
{statename: 'c', num: 3}
];
// 需求的echarts图需要的数据是这样滴:
[
{name: 'a', value: 1},
{name: 'b', value: 2},
{name: 'c', value: 3},
{name: 'd', value: 0}
];
简单说呢就是:如果后端传回来了这个值,就用对应的statename那组值的value;如果后端没有传回来这个值,就补零。
所以需要用到数组对比。
上代码
// 上代码
let defaultValue = ['a', 'b', 'c', 'd', 'e', 'f'];
data = defaultValue.map(d=>{
let item = response.data.find(e=>d===e.statename);
return {name: d, value: item?item.num:0}
})
搞定,so easy~
效果: