如何将一个传单标记添加到多个图层组

How can I add one leaflet marker to multiple layergroups?

本文关键字:添加 单标记 图层 一个      更新时间:2023-09-26

我通过以下方式向图层组添加标记:

var lGroup1 = new L.FeatureGroup(),
    lGroup2 = new L.FeatureGroup(),
    lGroup3 = new L.FeatureGroup();
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup1).on('click', onClick);
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup2).on('click', onClick);
new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup3).on('click', onClick);

如您所见,我正在向三个图层组添加相同的标记(相同的内容)。有没有办法在不生成三个相同标记的情况下做到这一点?我想添加一个但添加到多个图层组中。

我已经尝试过了,但没有运气:

new compMarker([50.07045,8.24660]).bindPopup('<p>Something</p>').addTo(lGroup1,lGroup2,lGroup3).on('click', onClick);

任何帮助将不胜感激!

const marker = m;
group1 = L.layerGroup();....
group1.addLayer(marker);
group2.addLayer(marker);
group3.addLayer(marker);
group1.hasLayer(marker) == true;

将标记分配给变量,并将该标记添加到多个图层组。然后,您可以使用hasLayer检查它们是否在所述图层组中。