如图在使用new BMapLib.MarkerClusterer() 方法实现点聚合的效果的时候,会直接报null。
什么原因?在阅读源码后,通过打印地图实例 map.Zx() 会发现 为false 。显示false 是地图未加载完成,导致后续报错,true地图加载完成,就不会报错。
因此,监听地图加载完成即可,如下(在监听到地图加载完成后,即可调用):
map.addEventListener("tilesloaded", function () {
var markerClusterer = new BMapLib.MarkerClusterer(map, {
markers: markers,
});