echarts事件问题

  • 点击非图表图形元素不会触发事件 on(‘click’)
  • myChart.getZr().on(‘click’) 可以监听到整个画布的 click 事件

https://github.com/apache/echarts/issues/3853
https://github.com/apache/echarts/issues/3440

getZr()

getZr() 方法拿到的是,全局的click事件
用Echarts实例的 getZr()方法监听到整个画布的 click 事件
用echartsInstance.getZr().on(‘click’ , params => {})监听画布
https://www.shuzhiduo.com/A/obzbAV86dE/

  1. chartInstance.current.getZr().off('click'); // 必须要 off,否则会重复提交
  2. chartInstance.current.getZr().on('click', e => {
  3. if (onClick && e.target?.type) {
  4. onClick(e);
  5. }
  6. });