echarts gl 3d地圖,click事件失效,解決辦法

問題

好比點擊四川,進行下鑽,須要獲取點擊區域的name屬性,根據name進而異步獲取四川的地圖的json,以下圖所示:
filejavascript

echart和gl版本

  • Loaded claygl, version 1.2.1
  • echarts-gl.min.js:1 Loaded echarts, version 4.6.0java

    事件綁定寫法

myChart.on('click', function (clickparams) {
        console.log(clickparams);
        
    });

無法觸發事件git

網上找另一個寫法github

myChart.getZr().on('click', function (clickparams) {
        console.log(clickparams);
        show(clickparams);
        
    });

只能獲取到點擊的x.y座標,獲取不到點擊區域的名稱,知足不了需求,崩潰,搞了很久, 後來去github issues上,果真不少人遇到這個問題,是個bug。json

換個版本試試,

https://echarts.baidu.com/resource/echarts-gl-latest/dist/echarts-gl.min.jsecharts

用這個版本可,再配合異步

myChart.on('click', function (clickparams) {
        console.log(clickparams);
        
    });

能夠實現觸發,並獲取點擊區域的name,可是我以前調好的地圖藍色變白色了,好吧,總不能去研究源碼吧?code

變通解決辦法

點擊柱狀圖進行,能夠觸發click,就這樣吧!!blog

相關文章
相關標籤/搜索