传单标记簇单一标记颜色

leaflet markercluster single marker color

我成功创建了自定义样式的聚类标记组。但是当簇中只有一个标记时,我不能改变黑色标记的颜色,请看图Black marker when alone in the cluster

如何更改默认标记颜色?

这是我创建集群组的方法

var clusterGroup = new L.MarkerClusterGroup({
    iconCreateFunction: function(cluster) {
        var childCount = cluster.getChildCount();

        return new L.DivIcon({ html: '<div><span>' + childCount + '</span></div>', className: 'marker-cluster marker-mycluster', iconSize: new L.Point(40, 40) });
    }
})

一些CSS

.marker-mycluster {
background-color: rgba(255,191,84, 0.6);
}
.marker-mycluster div {
background-color: rgba(255,191,84, 1);
}

你的单个黑色标记只是你的普通标记,在任何簇之外,因为它远离其他标记。

如果您想替换所有标记的视觉外观,包括当它们不聚集时(即当它们显示为单个标记时),您可以方便地使用 MarkerCluster 插件的 singleMarkerMode option

var clusterGroup = L.markerClusterGroup({
    singleMarkerMode: true,
    iconCreateFunction: function(cluster) {
            // your code
        });
    }
})

这将覆盖所有标记的图标,使它们看起来像大小为 1 的簇。