原因:
原因在于如果不加限制 使用echarts 绘图的js有很大机率先于dom初始完成之前运行,造成图表不显示。
解决:
使用setTimeout函数延迟运行绘图的js.时间在500毫秒左右,可根据情况调整
paintObj={
init:()=>setTimeout("paint()",500)
}
function paint(){
var chartDom = document.getElementById('main');
var myChart = echarts.init(chartDom);
var option;
option = {
.....
};
myChart.setOption(option);
}
// 在引用出调用即可
paintObj.init()
注:若有多个图表,绘图方法名不能相同(此例中的 paint),否则会出问题,
对象里的是局部方法,对象外的就变成全局方法了