1. 我們在日常的開發中使用Echarts時,不像在學習的過程中是自己在option中的配置項填寫圖表需要的參數,而是通過ajax請求后台,獲取數據后,使用javascript來動態的修改數據,但是有的時候我們在選擇一定得條件時獲取不到數據,當沒有數據時ECharts會默認調用 noDataLoadingOption 這個配置項中的內容來顯示一個冒泡的頁面,中間顯示暫無數據這四個字:
2. 當我們使用的這個圖表沒有 xAxis 這個配置項的時候就沒有問題,但是我們使用柱狀圖和折線圖的時候就會報錯,這個問題我一開始就有一點點想不通,因為這個錯誤顯示的是 option 下的data,但是大家都知道 option 下沒有 data 這個配置項,於是我就在官網的實例中試着在有 data 的配置項中刪除數據,然后發現是 xAxis 中的 data 為空時就會報錯,有了錯誤之后這個 js 就不會繼續執行下去,這個我們都是知道的,但是我需要的就是在沒有數據時顯示以上的界面啊,這個問題就把我難倒了,於是我在網上搜索這個問題的答案,發現並沒有,但是這還是阻止不了我解決問題的腳步,於是我突然想到了可不可以自己在新定義一個 option 呢?想到這個后我就新定義了一個 option ,里面就是有幾個什么內容都沒有的配置項,代碼下面會貼出,這個時候我們就可以在 js 中進行判斷了,當 xAxis 中的 data 沒有數據的時候我們就可以使用自己新建的 option ,反則使用之前的 option:這個時候新建的 option 因為里面什么都沒有,就會顯示上面的界面。
if(insOption.xAxis[0].data.length == 0){ pieChart.clear(); var option1 = { title :{ text:"" }, series:[ { } ] }; pieChart.setOption(option1); }else{ pieChart.clear(); pieChart.setOption(insOption); }