移除Leaflet图层时如何取消LayerControl中复选框的选中状态
Leaflet移除图层后同步LayerControl复选框状态的原生方法
- 直接用
layerControl.removeLayer(layerName)即可,这是Leaflet原生提供的方法,调用它不仅会把图层从地图上移除,还会自动同步LayerControl里的复选框状态,取消其选中状态。 - 别单独用
map.removeLayer操作,因为LayerControl维护着自身的图层列表状态,单独调用地图的移除方法不会通知LayerControl更新控件UI,这就是你遇到复选框仍选中的原因。 - 如果已经调用了
map.removeLayer,也可以手动触发LayerControl的状态更新:layerControl._update(),不过更推荐直接用layerControl.removeLayer一步到位,更简洁可靠。
内容的提问来源于stack exchange,提问作者tallistroan
相关产品推荐
相关产品推荐

