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

时间:2016-02-02 14:38:31

标签: javascript leaflet

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

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);

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

const marker = m;
group1 = L.layerGroup();....

group1.addLayer(marker);
group2.addLayer(marker);
group3.addLayer(marker);

group1.hasLayer(marker) == true;

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