我正在使用传单显示地图和创建折线。在创建任何新的polyline之前,我想删除所有的polyline。
当我创建polyline时,
我将所有的polyline存储在数组中- $scope.polycoords = [] ;
要删除所有polyline,我将使用此代码。
for(var i = 0; i< $scope.polycoords.length; i++){
map.removeLayer($scope.polycoords[i]);
}但这不管用。给我这个错误-错误: map.removeLayer不是一个函数
我怎么才能解决这个问题?
发布于 2020-03-28 10:30:25
愿你迟到,但这对我有用:
使用L.featureGroup()
var active_polyline = L.featureGroup().addTo(map);创建第一个多行时,通过一个循环将它们添加到active_polyline中
polyline = L.polyline(mypolyline).addTo(active_polyline);在创建一个新的polyline之前清空L.featureGroup(),以便删除前面的那些:
active_polyline.clearLayers();然后创建一个新的:
polyline = L.polyline(mynewpolyline).addTo(active_polyline);https://stackoverflow.com/questions/45951876
复制相似问题