我正在创建一个包含群集的地图,我想在其下显示一个群集列表。
为了获得集群,我试图从对象中检索它们。但它不像我预期的那样有效:
// Initialize clusterer
markerCluster = new MarkerClusterer(map, markers, clusterOptions);
// this logs an empty array
var clusters = markerCluster.clusters_;
console.log(clusters);
// This logs array of clusters
setTimeout(function(){
var clusters = markerCluster.clusters_;
console.log(clusters);
}, 500)
所以我想弄清楚是否有onload事件或回调函数..
答案 0 :(得分:2)
这取决于你正在使用的集群库,但基本上,MarkerClusterer类是OverlayView的扩展。
一旦实际添加了OverlayView(OverlayView.onAdd方法),就会完成群集。
您获得的第一个日志为空,表示尚未添加叠加层。据我所知,没有叠加添加的事件。
最佳解决方案是扩展MarkerCluster类,重载onAdd方法,发送事件,然后在相应的侦听器中添加标记。