vue使用Echarts設置數據無效問題記錄及解決方法
場景:
做一個動態(tài)的柱狀圖,模擬socket效果,如圖所示:
遇到的問題:
元數據格式是這樣的:
config: { data: [ { name: '義烏市', value: 169 }, { name: '東陽市', value: 123 }, { name: '武義縣', value: 98 }, { name: '蘭溪市', value: 75 }, { name: '金東區(qū)', value: 66 }, ], colors: ['#e062ae', '#fb7293', '#e690d1', '#32c5e9', '#96bfff'], unit: '單位', showValue: true }
剛開始試著在mounted鉤子里面遍歷直接改,頁面無變化,但控制臺有效。
接著嘗試使用map,同上,失敗。
接著,使用$set()依然無效。
最終解決方案:
我的思路是:
先定義一個變量接收初始值,然后對這個變量進行一些列的邏輯處理,最后再把這個變量賦值回去給元數據,這樣操作下來,以上的問題就解決了,寫這個文章的目的就是,如果有時候$set()也不好使的時候可以嘗試這個方法。
一句話總結就是,復制元數據,處理后賦值回去。
mounted () { this.clearTimer = setInterval(() => { let obj = JSON.parse(JSON.stringify(this.config)) obj.data.forEach((item, index) => { item.value += parseInt(Math.random() * 20 + 1) }) this.config = obj console.log(this.config.data) }, 5000) console.log(this.config.data) }, beforeDestroy () { clearInterval(this.clearTimer) },
小結:
如果再用echarts的話,要實現(xiàn)此類功能,可能還要重新運行初始化函數
例如:this.init(this.data)
到此這篇關于vue使用Echarts設置數據無效問題記錄的文章就介紹到這了,更多相關vue Echarts數據無效內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue進入頁面加載數據緩慢實現(xiàn)loading提示過程
這篇文章主要介紹了vue進入頁面加載數據緩慢實現(xiàn)loading提示過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-08-08解決vue無法加載文件C:\Users\Administrator\AppData\Roaming\npm\vue.ps
這篇文章主要介紹了解決vue無法加載文件C:\Users\Administrator\AppData\Roaming\npm\vue.ps1因為在此系統(tǒng)上禁止運行腳本問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03