在做折线图的过程中遇到了后端返回多条x轴数据与series中的data对应,但是echarts未提供多个x轴的功能,举个例子:
这里我需要分离出data数组内每个对象的createTime日期作为x轴数据
解决方案:
1.在遍历数组每一项后拿到所有x轴数据合并为一个数组
2.通过new Set去重后得到无重复的x轴数据
3.使用sort为数组排序
arr.forEach((item, index) => {
let xdata = item.datas.map((val) => {
return val.createTime.split(" ")[0];
});
xAllData.push(...xdata);
if (index === arr.length - 1) {
this.xData = Array.from(new Set(xAllData)).sort(function (a, b) {
return a - b;
});
});
}
});