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

問題

比如點擊四川,進行下鑽,需要獲取點擊區域的name屬性,根據name進而異步獲取四川的地圖的json,如下圖所示:
在這裏插入圖片描述

echart和gl版本

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

事件綁定寫法

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

沒法觸發事件

網上找另外一個寫法

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

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

換個版本試試,

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

用這個版本可,再配合

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

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

變通解決辦法

點擊柱狀圖進行,可以觸發click,就這樣吧!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章