vue中使用echarts造成內(nèi)存泄漏的問題

?之前在vue結(jié)合echarts的項目中遇到一個問題,我在切換路由時進行chrome快照,發(fā)現(xiàn)每次切換路由內(nèi)存穩(wěn)步增加十幾兆,后面結(jié)合快照分析發(fā)現(xiàn)是echarts內(nèi)存泄漏的問題。

 this.chart=echarts.init(document.getElementById(dom));
var option={
    //.....................
}
this.chart.setOption(option);

?在頁面中總共使用了十幾個圖表,由于在每次加載路由時,對每個圖表進行了初始化,創(chuàng)建了echarts實例,但是在銷毀組件的時候并沒有銷毀echarts實例。查詢資料,官方提供了dispose()方法對實例進行銷毀,并釋放了實例。用上過后,內(nèi)存果然不再增長。

beforeDestory(){
  echarts.dispose(this.chart);
  this.chart = null;
}

注:因為dispose是完全對實例進行了銷毀,所以假如要重新構(gòu)建echarts需要重新使用init方法進行初始化.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容