在传单图层组中为空白图块图层添加选项

Add option for Blank TileLayer in Leaflet LayerGroup

本文关键字:图层 空白 选项 添加 单图层      更新时间:2023-09-26

我有一个底图集合,我希望用户能够选择:

var BaseMaps = {
    // TODO blank tileLayer
    "Default": L.tileLayer('https://{s}.tiles.mapbox.com/v3/{id}/{z}/{x}/{y}.png', {
        id: 'examples.map-20v6611k',
        noWrap: true
    }),
    "ESRI Roads": L.tileLayer('http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer/tile/{z}/{y}/{x}', {
        noWrap: true
    })
};

这些图层将添加到我的地图的图层组控件中,并具有L.control.layers(BaseMaps).addTo(map)并按预期工作

问题是我希望用户能够从同一控件中选择空白图块图层,从而有效地关闭底图,但是通过L.tileLayer()的空或空白图块图层不起作用,因为这会破坏传单功能

有没有一种干净的方法可以向此控件添加空白图块图层选项?挖掘API和各种github/论坛问题并没有浮出水面。

提前感谢!

给出一个空字符串作为 url 参数对我有用,并且不会引发任何错误:

var base = {
    'Empty': L.tileLayer(''),
    'OpenStreetMap': L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
        'attribution': 'Map data © OpenStreetMap contributors'
    })
};

Plunker的工作示例:http://plnkr.co/edit/v7sICO?p=preview