解决办法:首次加载时渲染图表,再次调用时只更改数据
getPassdata(data) {
this.passColumnPlot = new Column('passcontainer', {
data,
xField: 'year',
yField: 'count',
columnWidthRatio: 0.3,
xAxis: {
label: {
autoHide: true,
autoRotate: false,
},
},
meta: {
year: {
alias: '类别',
},
count: {
alias: '数量',
},
},
});
this.passColumnPlot.render();
},
// 获取报表
async getReport() {
const getReportDatalist = await Taskmanagement.getReportData(this.formselect);
if (getReportDatalist == null) return;
this.getReportDatalist = getReportDatalist
if (this.firstChart == true) {
this.firstChart = false;
this.getPassdata(this.getReportDatalist)
} else {
this.passColumnPlot.chart.changeData(this.getReportDatalist);
}
}