Leaflet 使用传单更改当前单击的标记图标

Leaflet 使用传单更改当前单击的标记图标,leaflet,google-maps-markers,Leaflet,Google Maps Markers,我正在使用传单插件来显示标记。单击当前标记时,图标应仅更改当前标记 再次单击另一个标记时,将该标记更改为新图标,并保持所有其他标记图标为原始图标 就像我有两个标记图标 1-在地图上显示标记时设置的原始图标 2-新建标记-我希望在单击标记时设置此标记图标。只应更改当前标记图标,并保留所有其他图标的原始图标。是否有标记层?如果是,您可以先创建一个新图标 var customIcon = L.Icon.extend({ options: { iconSize: [40.4, 4

我正在使用传单插件来显示标记。单击当前标记时,图标应仅更改当前标记

再次单击另一个标记时,将该标记更改为新图标,并保持所有其他标记图标为原始图标

就像我有两个标记图标 1-在地图上显示标记时设置的原始图标
2-新建标记-我希望在单击标记时设置此标记图标。只应更改当前标记图标,并保留所有其他图标的原始图标。

是否有标记层?如果是,您可以先创建一个新图标

var customIcon = L.Icon.extend({
    options: {
        iconSize: [40.4, 44],
        iconAnchor: [20, 43],
        popupAnchor: [0, -51]
    }
});

var myCustomIcon = new CustomIcon({ iconUrl: '../images/marker.png' });
之后,应单击图层内的标记索引,并按如下方式更新图标:

markersLayer[markersIndex].setIcon(myCustomIcon);
你可以试试这个。 单击
标记1
时,其图标将更改为您设置的图标

let marker1 = L.marker([e.latitude, e.longitude], { icon: greenIcon }).on('click', ()=>{
                marker1.setIcon(redIcon)
              }).addTo(map)

这个解决方案对我有效。