我有一张leaflet
地图,我正在刷新来自服务器的新数据。您可以点击地图功能,popup
将显示该点。每次刷新时,我都会使用layer
删除map.removeLayer
,使用L.geoJson
添加新数据,但弹出窗口会消失。我希望弹出窗口能够保持活动状态。我知道这可能不会像删除layer
那样按照我的方式工作。还有另一种方法可以刷新图层数据并维护所选的功能弹出窗口吗?
这是我从服务器获取新数据后调用的刷新函数。
function refreshMapLocations() {
map.removeLayer(locationLayer);
locationLayer = L.geoJson(locations, {
onEachFeature: onEachFeature
}).addTo(map);
}
这会为每个功能
创建弹出窗口function onEachFeature(feature, layer) {
if (feature.properties && feature.properties.UserName) {
layer.bindPopup(feature.properties.UserName);
}
}
答案 0 :(得分:0)
这很有用,我会跟踪我在弹出内容中设置的ID。添加图层后,我会存储Popup
的{{1}}并对其clickedId
进行存储。
popupOpen