【发布时间】:2020-03-25 18:23:05
【问题描述】:
我尝试使用鼠标单击来选择/取消选择图层。首先我的地图是这样的
点击一个图层后,我想选择它并突出显示
现在,如果我再次单击之前选择的图层,我想取消选择它并重置高亮。这是我用来执行此操作的代码:
onEachFeature: function(feature,layer) {
layer.setStyle({fillOpacity: 0.0 , color: '#424a44', weight: 2});
layer.on('click', function(e) {
let isLayerAlreadySelected = // Some logic to undestand if layer alreeady selected
if(isLayerAlreadySelected)
layer.setStyle({fillOpacity: 0.0 , color: '#424a44', weight: 2});
else
layer.setStyle({fillOpacity: 0.4 , color: '#004691', weight: 3});
}
}
但有时当我尝试取消选择先前选择的图层时,图层样式不会重置不透明度。对此有何建议?
【问题讨论】:
-
你能创建 stackblitz 吗?
标签: javascript angular leaflet