Leaflet 传单:map.locate动态设置最大缩放

Leaflet 传单:map.locate动态设置最大缩放,leaflet,Leaflet,很容易跟踪用户的位置,并用传单显示位置标记 _map.locate({ watch: true, setView: true, maxZoom: 13, enableHighAccuracy: true }) 还有locationfound回调中的一些代码 但是,用户可能希望缩放到不同的级别,但当position maker更新时,地图始终会缩放回locate maxZoom选项中设置的值 是否有方法根据用户选择的缩放级别动态更改maxZomm值 好吧,在源

很容易跟踪用户的位置,并用传单显示位置标记

_map.locate({
    watch: true, 
    setView: true, 
    maxZoom: 13,
    enableHighAccuracy: true
})
还有locationfound回调中的一些代码

但是,用户可能希望缩放到不同的级别,但当position maker更新时,地图始终会缩放回locate maxZoom选项中设置的值


是否有方法根据用户选择的缩放级别动态更改maxZomm值

好吧,在源代码中挖掘一点后,就可以像这样简单:

收听zoomend事件

_map.on('zoomend', _changeLocateMaxZoom);
然后更新locateOptions maxZoom

function _changeLocateMaxZoom(e) {
    if (_map._locateOptions) {
        _map._locateOptions.maxZoom = _map.getZoom();
    }
}
传单是一个精心设计的图书馆