【问题标题】:Updating cluster icon after updating children更新子节点后更新集群图标
【发布时间】:2015-03-30 21:55:19
【问题描述】:

在这个人为的示例中,我在地图上显示温度测量值,并使用 markercluster 插件对距离太近的标记进行聚类。我正在使用集群组的 iconCreateFunction 来生成一个反映组中孩子平均温度的图标。

我的问题是我想随着时间的推移更新标记的温度,并更新集群图标以反映这些变化。有什么方法可以在更新后触发所有集群上的 iconCreateFunction 吗?

【问题讨论】:

  • 试图做同样的事情。你是怎么找到的?谢谢

标签: leaflet markerclusterer


【解决方案1】:

我发现这个解决方案有点老套,但确实有效:

如果你有你的标记组

var markers = new L.MarkerClusterGroup(...);

然后你可以强制集群通过类似的方式更新它们的图标

for (var cluster in markers._featureGroup._layers) {
    markers._featureGroup._layers[cluster]._updateIcon && markers._featureGroup._layers[cluster]._updateIcon();
}

【讨论】:

    【解决方案2】:

    “官方”解决方案似乎是将标记重新添加到集群组,如下所示:https://github.com/Leaflet/Leaflet.markercluster/issues/287

    这可以简单地完成:

    var markers = new L.MarkerClusterGroup(...);
    ...
    markers.removeLayer(marker);
    markers.addLayer(marker);
    

    【讨论】:

      猜你喜欢
      • 2012-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-14
      • 2017-03-13
      • 2022-12-01
      • 1970-01-01
      相关资源
      最近更新 更多