在vue中,資料更改了,但是echarts視圖未更新
- 使用的架構為vue和elementUI
- 涉及websock
從websock拿到的資料渲染到頁面的時候發現echarts視圖未更新,部分代碼如下;
在網上查了一下,說有可能跟for循環有關:
vue 不能檢測以下變動的數組:1.當你利用索引直接設定一個項時;2.當你修改數組的長度時;
我的解決辦法:this.$set()或splice()方法,可以引起視圖的更新;以為問題解決了,然并卵,隻能說echarts賊坑;找了半天,發現是echarts元件結構的問題,結構必須要像這樣寫,如下圖:
發現問題解決了,從websock拿到的實時資料可以渲染到頁面上面,echarts視圖也在實時更新;問題解決了。