【发布时间】:2018-07-05 15:21:50
【问题描述】:
我正在使用 Leaflet 和我的 ionic 应用程序在上传的平面图上绘制多边形。一切都很好。在重新绘制地图之前,我无法清除现有的多边形 - 这会导致多个图层堆叠在一起。
这是我目前正在做的事情:
.ts 文件
ngOnInit() {
// get saved polygons from db
...
.subscribe((res => {
res.forEach(data => {
this.drawPolygon(data);
});
}));
}
...
// Draw each of the saved polygons
drawPolygon(data) {
if (data.polygon.geometry) {
let shape = {
polygon: data,
type: data.polygon.type,
geometry: {
type: data.polygon.geometry.type,
coordinates: data.polygon.geometry.coordinates
},
properties: {}
};
// Remove all existing layers
L.geoJSON(shape, {
onEachFeature: this.onEachFeature.bind(this),
}).addTo(this.myMay);
}
}
// onEachFeature method to trigger popover
onEachFeature(feature, layer) {
layer.on('click', event => {
let popover = this.popoverCtrl.create('MyComponent', {
layer: feature
});
popover.present();
}, this);
}
我尝试了removeLayer 或clearLayers 的各种方法,甚至在没有运气的情况下删除了地图。任何建议都非常感谢!
编辑
如果我在完成所有操作后刷新页面,所有附加层都将被删除 - 单个层将保持原样。
【问题讨论】:
标签: ionic-framework leaflet leaflet.draw