Javascript 带有自定义图标的传单簇标记

Javascript 带有自定义图标的传单簇标记,javascript,leaflet,markerclusterer,Javascript,Leaflet,Markerclusterer,我已经成功地把我的标记组合起来了。我现在想做的是显示一个带有集群中点数的自定义图标,但我不知道如何做,或者这是否可行 我阅读了文档,了解到在创建标记集群时需要实现自己的iconCreateFunction addSomeMarkers: function(data, markerProperties) { var markers = L.markerClusterGroup({ iconCreateFunction: function(cluster) { /

我已经成功地把我的标记组合起来了。我现在想做的是显示一个带有集群中点数的自定义图标,但我不知道如何做,或者这是否可行

我阅读了文档,了解到在创建标记集群时需要实现自己的iconCreateFunction

addSomeMarkers: function(data, markerProperties) {
   var markers = L.markerClusterGroup({
      iconCreateFunction: function(cluster) {
         // TODO
      }
   });
   ....
}
我知道我可以使用自定义css类和
cluster.getChildCount()
返回L.divIcon,但我不能将
markerProperties.iconUrl
指定为应该显示的图像。 我还可以将
L.icon
与来自
markerProperties.iconUrl
的自定义图标一起使用,但在这种情况下,我看不出应该如何显示
cluster.getChildCount()

所以我需要的是两者的结合。有类似的吗?如果没有,有人能提示一种解决方法来实现这一点吗?

使用以下示例:

L.divIcon的文档如下:

我举了一个例子:

希望它能帮助你

有意义的部分包括:

var markerCluster = new L.MarkerClusterGroup({ 
    iconCreateFunction: function (cluster) {
        var markers = cluster.getAllChildMarkers();
        var html = '<div class="circle">' + markers.length + '</div>';
        return L.divIcon({ html: html, className: 'mycluster', iconSize: L.point(32, 32) });
    },
    spiderfyOnMaxZoom: false, showCoverageOnHover: true, zoomToBoundsOnClick: false 
});
可能还有其他方法…

使用以下示例:

L.divIcon的文档如下:

我举了一个例子:

希望它能帮助你

有意义的部分包括:

var markerCluster = new L.MarkerClusterGroup({ 
    iconCreateFunction: function (cluster) {
        var markers = cluster.getAllChildMarkers();
        var html = '<div class="circle">' + markers.length + '</div>';
        return L.divIcon({ html: html, className: 'mycluster', iconSize: L.point(32, 32) });
    },
    spiderfyOnMaxZoom: false, showCoverageOnHover: true, zoomToBoundsOnClick: false 
});
可能还有其他方法…

使用以下示例:

L.divIcon的文档如下:

我举了一个例子:

希望它能帮助你

有意义的部分包括:

var markerCluster = new L.MarkerClusterGroup({ 
    iconCreateFunction: function (cluster) {
        var markers = cluster.getAllChildMarkers();
        var html = '<div class="circle">' + markers.length + '</div>';
        return L.divIcon({ html: html, className: 'mycluster', iconSize: L.point(32, 32) });
    },
    spiderfyOnMaxZoom: false, showCoverageOnHover: true, zoomToBoundsOnClick: false 
});
可能还有其他方法…

使用以下示例:

L.divIcon的文档如下:

我举了一个例子:

希望它能帮助你

有意义的部分包括:

var markerCluster = new L.MarkerClusterGroup({ 
    iconCreateFunction: function (cluster) {
        var markers = cluster.getAllChildMarkers();
        var html = '<div class="circle">' + markers.length + '</div>';
        return L.divIcon({ html: html, className: 'mycluster', iconSize: L.point(32, 32) });
    },
    spiderfyOnMaxZoom: false, showCoverageOnHover: true, zoomToBoundsOnClick: false 
});

也许还有其他的方法……

真遗憾,我没有想到这一点。非常感谢。与原始问题没有直接关系,但值得注意的是,您可以调用
cluster.getChildCount()
,而不是
markers.length
。真遗憾,我没有想到这一点。非常感谢。与原始问题没有直接关系,但值得注意的是,您可以调用
cluster.getChildCount()
,而不是
markers.length
。真遗憾,我没有想到这一点。非常感谢。与原始问题没有直接关系,但值得注意的是,您可以调用
cluster.getChildCount()
,而不是
markers.length
。真遗憾,我没有想到这一点。非常感谢。与原始问题没有直接关系,但值得注意的是,您可以调用
cluster.getChildCount()
,而不是
markers.length