echarts有数据展示,没有数据则清空数据-集团平台
一、需求 如果有数据则根据数据进行柱状图的展示,如果没有数据则清空
if(this.chart){
this.chart.dispose()
this.chart= null
}
1、获得接口返回的对象长度
let orgList = []
this.$store.getters.orgList.forEach(r => {
if(r.isStatiData == true){
orgList.push(r)
}
});
let year = this.routerData.slice(0,4)
let month = this.routerData.slice(4,6)
this.showData=true;
let params = {
repYear:year,
repMonth:month,
};
findDataByOperation(params).then(res=>{
let count =Object.keys(res.data).length
let reportList=[]
if(count > 0){
reportList= res.data.fillInData
this.showData = []
for(let i = 0; i < reportList.length; i++){
let fd = reportList[i]
let sd = {
orgId: fd.orgId,
name: '',
totalCount: fd.gunFillInTotalCount,
totalBullCount: fd.bullCount
}
this.showData.push(sd)
}
// 公司名赋值
for(let i = 0; i < this.showData.length; i++) {
let d = this.showData[i]
for(let j = 0; j < orgList.length; j++) {
let o = orgList[j]
if(d.orgId == o.orgId) {
d.name = o.orgShortName
break
}
}
}
// 生成柱状图
let name = []
let totalCount = []
let totalBullCount = []
for(let i = 0; i < this.showData.length; i++) {
let d = this.showData[i]
name.push(d.name)
totalCount.push(d.totalCount)
totalBullCount.push(d.totalBullCount)
if(i == this.showData.length - 1) {
// 生成柱状图
this.initChart(name, totalCount, totalBullCount)
}
}
}else{
if(this.chart){
this.chart.dispose()
this.chart= null
}
}
})
浙公网安备 33010602011771号