echarts根据dom获取实例

初始化echarts:

      var myChart = echarts.init(document.getElementById("chartWrapper"), "macarons");

但是在其他模块中想要根据该DOM元素获取echarts:

    var compareChart = echarts.getInstanceByDom(document.getElementById("chartWrapper"));
    compareChart.clear();

报错:

    Cannot read property 'clear' of undefined(…)

请问如何通过容器正确获取echarts实例?

阅读 26k
1 个回答

原因是异步的问题,当执行获取echarts实例时页面仍没有被渲染完成。
echarts api 中有一个getInstanceByDom方法,用于获取 dom 容器上的实例,不过我没用过
参考getInstanceByDom
或者用一个延迟执行函数

setTimeout(function(){
    var compareChart = echarts.getInstanceByDom(document.getElementById("chartWrapper"));
        compareChart.clear();
},100)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题