这里地图没有地图类型和缩放更改事件。有什么解决方法吗?

时间:2018-11-17 15:33:08

标签: here-api

我一直没有为Here地图项目(网络,js API)寻找缩放更改和地图类型更改事件:https://developer.here.com/documentation/maps/topics/events.html

我在这里找到了缩放更改事件的解决方法:Zoom changed event for nokia Here maps

但是我找不到地图类型更改的任何内容。我什至找不到像map.getMapType()或map.getScheme()这样的函数,可以尝试将其添加到以前的解决方法中。

我正在使用基本的ui控件,因此用户只能在法线,卫星和地形图之间进行切换。

是否存在此事件?如果不存在,是否有变通方法作为缩放更改事件的解决方法?

谢谢!

2 个答案:

答案 0 :(得分:0)

您可以通过监听事件“ baselayerchange”来捕获地图类型更改:

map.addEventListener('baselayerchange', () => {
  // ...
})

要检测缩放变化,请按照您所链接的答案中的方法收听“ mapviewchangeend”

map.addEventListener('mapviewchangeend', () => {
   console.log(map.getZoom())
}

答案 1 :(得分:0)

好吧,在18个月后,我再次遇到了这个问题,终于找到了解决方案。在这里:

map.addEventListener('baselayerchange', function(){
            var mapType = map.getBaseLayer().getProvider().copyrightKey_;
            if (mapType=="hybrid") {
                // case hybrid
                });
            }
            else if (mapType=="terrain") {
                // case terrain
                });
            }
            else {
               // case normal
            }
         });