我是打算將json中的資料用echarts圖示展示出來,所以將讀取的操作寫入了echarts的點擊事件中,具體代碼是這樣:
'''
myChart.on('click', function (params) {
if (params.componentType === 'series' && params.seriesType === 'line') {
var dataIndex = params.dataIndex;
if(request!=null){
var url = "./data/cnn4/aapd/metrics_epoch_" + dataIndex + ".json";/*json檔案url,本地的就寫本地的位置,如果是服務器的就寫服務器的路徑*/
request.open("GET", url,true);/*設定請求方法與路徑*/
// request.setRequestHeader('Content-Type','application/json');
//request.overrideMimeType("application/json");
request.onreadystatechange = function () {/*XHR物件獲取到回傳資訊后執行*/
if(request.readyState == 4){
if (request.status == 200) {/*回傳狀態為200,即為資料獲取成功*/
var json = JSON.parse(request.responseText);
//后面開始讀資料操作
'''
然后我運行的時候發現需要點擊兩次才能把新的資料讀進來,如果是剛開始點擊第一次是沒有資料的,然后再點擊一次才會將資料讀入顯示,我的setoption操作也是緊跟著前面的,緊接著讀完資料就馬上畫圖,上網找了資料發現可能是因為xmlhttprequest非簡單請求會先發一個options預檢請求,而我已經把自定義的頭都注釋了用了get結果還是不行,網上也沒有查找到可以屏蔽掉第一次請求回傳資料的方法,想問下大家有什么解決辦法嗎?想只點擊一次就可以出來圖形。
uj5u.com熱心網友回復:
用瀏覽器F12看看Networkuj5u.com熱心網友回復:
讀本地json應該不會有options,在click里面debugger一下是否其他錯誤影響轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/32110.html
標籤:JavaScript
