hustcc / echarts-for-react

⛳️ Apache ECharts components for React wrapper. 一个简单的 Apache echarts 的 React 封装。
https://git.hust.cc/echarts-for-react
MIT License
4.56k stars 633 forks source link

getEchartsInstance获取实例的时机 #380

Closed luyunzi closed 3 years ago

luyunzi commented 4 years ago

getEchartsInstance()在生命周期的什么时候才能获取,在componentDidMount获取报错找不到这个方法,需要在初始化的时候高亮某个区块,但是无法获取echarts实例 componentDidMount() { const echarts_instance = this.echarts_react.getEchartsInstance(); setTimeout(() => { echarts_instance.dispatchAction({ type: 'highlight', seriesIndex: 0, dataIndex: 0, }); }, 500); }

   <ReactEcharts
        ref={e => {
          this.echarts_react = e;
        }}
        {...this.props}
        option={option1}
        style={{ width: '100%', height: 300 }}
        className="react_for_echarts"
        onEvents={onEvents}
      />
Marszht commented 4 years ago

@luyunzi 我也遇到了这个问题,请问你解决了么?

Marszht commented 4 years ago

目前是能在 componentDidUpdate 中 去 获取 echart的但是没有办法更新 echart 

lifuzhao100 commented 3 years ago

@luyunzi 其实可以直接传入onChartReady prop,这是一个callback,在rerender结束后,会调用这个callback,并传入echartsInstance,你可以在这里处理你的业务逻辑

hustcc commented 3 years ago

目前是能在 componentDidUpdate 中 去 获取 echart的但是没有办法更新 echart 

很可能原因是 echarts 做性能优化,改成异步了。