ECharts在每次 setOption 後都需要清理變量,在ECharts中是有API手動清理變量的,分別是 clear() 和 dispose() ,區別是前者只需插入參數,ECharts就會重繪圖表;而後者則是直接將ECharts對象進行清理,需要重新構建ECharts對象。另外,針對IE,也有專門的回收內存函數 CollectGarbage ,每次瀏覽器最小化的時候,瀏覽器都會調用該函數,清理內存。
chart.dispose() 配合 echarts.init() ,然後再 setOption() 。或者調用其 clear() 方法。
具體可以參見 /apache/incubator-echarts/issues/4726
/hustcc/echarts-for-react/blob/master/src/core.jsx#L122
關於這個插件,我看了壹下它的解決辦法,它在 componentDidUpdate 和 componentWillUnmount 兩個生命周期內都進行了處理: