echarts重新獲取數據不重新渲染的解決方法

在特殊情況下,我們可能是用echarts實例并且setOption()但無法刷新表格內容,例如:我們修改了div容器的內部標簽等等...

原因可能是我們破壞了第一次渲染的div容器的結構,

echarts的渲染邏輯是這樣的:

如果未實例化則進行實例化過程,在此期間會在div容器生成一個?_echarts_instance_ 屬性, 該屬性值就是當前echarts的ID,然后進行后邊的渲染操作。

當我們刷新已經實例化的echarts圖表時,echarts會先匹配改div容器上的_echarts_instance_屬性值是否與實例對象的ID一樣,如果一樣則會在原有的結構上進行渲染,但是因為我破壞了原有的結構,所以無法重新渲染出表格內容,所以我們可以執行如下代碼:

document.getElementById('div的ID').setAttribute('_echarts_instance_', '')

這樣div的_echarts_instance_值就不會被匹配到,這樣echarts就會像渲染新的圖標一樣渲染出來

注:這樣的操作會重新渲染echarts的div容器結構,也就是重新操作了dom,會影響性能

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Swift1> Swift和OC的區別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,135評論 1 32
  • 前端開發知識點 HTML&CSS對Web標準的理解、瀏覽器內核差異、兼容性、hack、CSS基本功:布局、盒子模型...
    Hebborn_hb閱讀 849評論 0 1
  • 目錄一、介紹二、渲染引擎三、解析與DOM樹構建四、渲染樹構建五、布局六、繪制七、動態變化八、渲染引擎的線程九、CS...
    饑人谷_米彌輪閱讀 2,470評論 0 10
  • 前端開發面試題 面試題目: 根據你的等級和職位的變化,入門級到專家級,廣度和深度都會有所增加。 題目類型: 理論知...
    怡寶丶閱讀 2,605評論 0 7
  • 第3章 基本概念 3.1 語法 3.2 關鍵字和保留字 3.3 變量 3.4 數據類型 5種簡單數據類型:Unde...
    RickCole閱讀 5,149評論 0 21