【发布时间】:2021-05-02 09:43:21
【问题描述】:
我想根据所选条件删除地图。
.component.ts
dataChanged (selectsensor) {
console.log(selectsensor)
for( var j=0;j<selectsensor.length;j++){
for (var i =0; i< this.sensors.length;i++){
if(this.sensors[i].name == selectsensor[selectsensor.length - 1]){
if(this.sensorsarray.filter(sense=>sense.name == selectsensor[selectsensor.length - 1]).length > 0){
console.log(this.sensorsarray.filter(sense=>sense.name == selectsensor[selectsensor.length - 1]).length);
for(var t=0;t<this.sensorsarray.length;t++){
if(this.sensorsarray[t].name == selectsensor[selectsensor.length - 1]){
this.sensorsarray.splice(t);
}
}
console.log(this.sensorsarray);
alert("Value exists!")
}else{
this.sensorsarray.push(this.sensors[i]);
var v= "map"+ (this.sensorsarray.length - 1 )+"";
map[i] = L.map(v).setView([this.sensors[i].latitude,this.sensors[i].longitude], 11);
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: ' <span style="font-size:17px">'+this.sensors[i].name+' </span>'
}).addTo(map[i]);
var latlng = L.latLng(this.sensors[i].latitude, this.sensors[i].longitude)
marker = L.marker(latlng, { icon: sensoricon }).addTo(map[i]);
circlemark[i] = L.circle(latlng, { radius: 5000, weight: 0 }).addTo(map[i]);
}
}
我想在条件为时移除地图 this.sensorsarray.filter(sense=>sense.name == selectsensor[selectsensor.length - 1]).length > 0)
【问题讨论】:
-
您可以使用
map[i].remove()删除地图 -
你能不能接受我的回答,这样这个问题就结束了
标签: leaflet openstreetmap react-leaflet angular-leaflet-directive