本地数据离线,导致后端返回的数据出现数据缺失的情况,但是在页面中使用echarts绘图时却需要进行绘制。因此需要前端对缺失的数据进行补充,缺失的数据暂时赋值为0。
handleHiatus(data: any[]) { // 获取传递给后台的时间范围,方便后期判断 let start = this.timeConfig.startDay; let end = this.timeConfig.endDay; let i = 0; while (start !== end) {// 根据当前时间和数据时间对比,判断是否有缺失 let isHiatus = data[i].sjsj !== start; if (isHiatus) { // 将当前数据下的所有键值遍历一遍赋值为0 let obj: any = {}; for (let key in data[i]) { obj[key] = 0; } // 时间需要重新赋值 obj.sjsj = start; // 在当前的位置插入缺失的数据 data.splice(i, 0, obj); } // 对开始的日期进行加一 start = new Date(start); start.setTime(start.getTime() + 24 * 60 * 60 * 1000); start = formatDate(start, ‘yyyy-MM-dd‘); i++; }return data; }
原文:https://www.cnblogs.com/ziyoublog/p/14680421.html