您的位置:首页 > 其它

leaflet和minimap切换时图层保持一致

2017-12-26 18:56 141 查看
大地图切换图层小地图随之切换
一、定义小地图源const gaodeMini = L.tileLayer('http://webrd0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}', { maxZoom: 13, subdomains: ['1', '2', '3', '4'] });const gaodeYxMini = L.tileLayer('http://webst0{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}', { maxZoom: 13, subdomains: ['1', '2', '3', '4'] });const gaodeYxMarkMini = L.tileLayer('http://webst0{s}.is.autonavi.com/appmaptile?style=8&x={x}&y={y}&z={z}', { maxZoom: 13, subdomains: ['1', '2', '3', '4'] });2二定义小地图图层组信息const gaodeMiniGroup = L.layerGroup([gaodeMini]);const gaodeYxMiniGroup = L.layerGroup([gaodeYxMini, gaodeYxMarkMini]);const baseLayersCopy = {'高德': gaodeMiniGroup,'高德影像': gaodeYxMiniGroup,}三、调用事件方法对小地图图层切换var miniMap = new MiniMap(gaodeMini, { toggleDisplay: true }).addTo(this.leafletMap);this.leafletMap.on('baselayerchange', function (e) {miniMap.changeLayer(baseLayersCopy[e.name]);});
从node_modules\leaflet-minimap\example\example_layerchange.html里面找到的解决方法,此方法在官方文档中有api,但是比较晦涩难懂,在SO论坛上有调用方法然而真正的使用是在这里找到的,所以通过组件内部的示例,有时能快速简洁地解决方法SO解决方法https://stackoverflow.com/questions/14103489/leaflet-layer-control-events
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  地图 layer minimap