缩放超过 18 时传单地图变为空白
Leaflet map is going blank when zooming more than 18
我正在使用传单和她的地图 API,问题是当我缩放超过 18 倍时,地图变成空白。我添加了 maxNativeZoom 但没有成功。此处地图支持的最大缩放比例为 20(来源:在线文档)
const here = {
apiKey:'API_Key'
}
const style = 'hybrid.day';
const hereTileUrl = `https://2.aerial.maps.ls.hereapi.com/maptile/2.1/maptile/newest/${style}/{z}/{x}/{y}/512/jpg?apiKey=${here.apiKey}&ppi=500`;
const map = L.map('map', {
center: [33.288410, -8.345090],
zoom: 16,
maxZoom: 20,
maxNativeZoom: 20,
// maxZoom: 22,
layers: [L.tileLayer(hereTileUrl)]
});
map.attributionControl.addAttribution('© HERE 2019');
map.on('zoomend', showZoomLevel);
showZoomLevel();
function showZoomLevel() {
document.getElementById('zoom').innerHTML = map.getZoom();
}
//alert(map.getMaxZoom());
对于您的 objective,您应该在 Leaflet Tile Layer 而不是地图上使用选项 maxZoom(如果需要,还可以使用 maxNativeZoom)。
L.tileLayer(hereTileUrl, {
maxZoom: 20,
maxNativeZoom: 19
})
更新的 jsfiddle:https://jsfiddle.net/7xnv0c1a/
(您的图块源 maxNativeZoom 似乎真的是 19,至少在您开始绘制地图的区域是这样)
TileLayerOptions(
urlTemplate: 'https://api.mapbox.com/styles/v1/elaminenouri/ckli0urcv13m317nw1n40u58z/tiles/256/{z}/{x}/{y}@2x?
附加选项:{
},
maxNativeZoom: 18,
maxZoom: 22
),
我正在使用传单和她的地图 API,问题是当我缩放超过 18 倍时,地图变成空白。我添加了 maxNativeZoom 但没有成功。此处地图支持的最大缩放比例为 20(来源:在线文档)
const here = {
apiKey:'API_Key'
}
const style = 'hybrid.day';
const hereTileUrl = `https://2.aerial.maps.ls.hereapi.com/maptile/2.1/maptile/newest/${style}/{z}/{x}/{y}/512/jpg?apiKey=${here.apiKey}&ppi=500`;
const map = L.map('map', {
center: [33.288410, -8.345090],
zoom: 16,
maxZoom: 20,
maxNativeZoom: 20,
// maxZoom: 22,
layers: [L.tileLayer(hereTileUrl)]
});
map.attributionControl.addAttribution('© HERE 2019');
map.on('zoomend', showZoomLevel);
showZoomLevel();
function showZoomLevel() {
document.getElementById('zoom').innerHTML = map.getZoom();
}
//alert(map.getMaxZoom());
对于您的 objective,您应该在 Leaflet Tile Layer 而不是地图上使用选项 maxZoom(如果需要,还可以使用 maxNativeZoom)。
L.tileLayer(hereTileUrl, {
maxZoom: 20,
maxNativeZoom: 19
})
更新的 jsfiddle:https://jsfiddle.net/7xnv0c1a/ (您的图块源 maxNativeZoom 似乎真的是 19,至少在您开始绘制地图的区域是这样)
TileLayerOptions( urlTemplate: 'https://api.mapbox.com/styles/v1/elaminenouri/ckli0urcv13m317nw1n40u58z/tiles/256/{z}/{x}/{y}@2x? 附加选项:{
},
maxNativeZoom: 18,
maxZoom: 22
),