沿着它周围的圆圈删除标记

tro*_*roy 4 openstreetmap leaflet

我正在使用Open Street Maps和使用leaflet library.我有一个像这样的图层组:

var testLayer = new L.LayerGroup(); --> declared in a different file
Run Code Online (Sandbox Code Playgroud)

我想在标记组中添加标记,在每个标记周围添加一个圆圈,然后将标记组添加到地图中:

在此输入图像描述

var realMarker = L.marker([52.6432, -6.53412 ],{icon: Icon,title:data[choice][key]["name"]
                        }).bindPopup("Dublin").addTo(testLayer);
var circle = L.circle([52.6432, -6.53412 ],400, {
                        color: 'red',
                        fillColor: '#f03',
                        fillOpacity: 0.5
                    }).addTo(testLayer);

 map.addLayer(testLayer);
Run Code Online (Sandbox Code Playgroud)

但是,当我使用标记组删除特定标记时,标记removeLayer()将从地图中删除,但圆圈会留下.如何删除圆圈和标记?

flu*_*lup 7

我会在标记中存储对圆圈的引用:

var realMarker = L.marker([52.6432, -6.53412 ],
                          {icon: Icon,title:data[choice][key]["name"]}
                         ).bindPopup("Dublin").addTo(testLayer);
var circle = L.circle([52.6432, -6.53412 ],400, {
                        color: 'red',
                        fillColor: '#f03',
                        fillOpacity: 0.5
                    }).addTo(testLayer);
realMarker.circle=circle;
map.addLayer(testLayer);
Run Code Online (Sandbox Code Playgroud)

然后,删除标记时,也要删除它的圆圈

testLayer.removeLayer(markerToRemove);
testLayer.removeLayer(markerToRemove.circle);
Run Code Online (Sandbox Code Playgroud)