1

我正在制作一张带有集群的地图,我想在它下面显示一个集群列表。

为了获得集群,我尝试从对象中检索它们。但它不像我预期的那样工作:

    // 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 事件或回调函数..

4

1 回答 1

2

这取决于您使用的聚类库,但基本上,MarkerClusterer 类是 OverlayView 的扩展。

一旦 OverlayView 被实际添加(OverlayView.onAdd 方法),集群就完成了。

您获得的第一个日志为空,表示尚未添加覆盖。据我所知,没有叠加添加的事件。

最好的解决方案是扩展 MarkerCluster 类,重载 onAdd 方法,发送事件,然后在相应的监听器中添加标记。

于 2013-10-09T14:51:11.013 回答