当我们把创建一个echarts图表的代码封装成一个方法,一旦多次调用这个方法创建图表的时候使用的dom节点都是同一个,每次都会init一个echarts实例,就会在控制台报如下警告:There is a chart instance already initialize on the dom(在dom上已经初始化了一个图表实例)。
因此我们应该先判断是否已经存在图表实例,解决方法如下:
先调用echarts.getInstanceByDom()方法判断是否已经存在echarts实例,如果不存在再去初始化
// 有的话就获取已有echarts实例的DOM节点
let myChart = echarts.getInstanceByDom(document.getElementById("myChart"))
// 如果不存在,就进行初始化
if (myChart == null) {
myChart = echarts.init(document.getElementById("myChart"));
}
let option ={...}
myChart.setOption(option);