javascript - 如何将传单地图边界框设置为该地图图层的组合
问题描述
我有一个带有两层“active_event_layer”和“inactive_event_layer”的传单地图。使用“map.fitBounds(active_event_layer.getBounds())”,我可以将地图边界框设置为图层的边界。但我真正想做的是将地图边界框设置为两个图层边界的组合。我试过了
var features = L.control.layers(basemaps, overlayMaps).addTo(map);
map.fitBounds(features.getBounds());
但该代码给了我一个错误。如何将地图边界框设置为两个图层“active_event_layer”和“inactive_event_layer”的边界组合这是我的代码
var active_event_collection = {{ active_events|geojsonfeature:"name"|safe }};
var inactive_event_collection = {{ inactive_events|geojsonfeature:"name"|safe }};
function onEachFeature(feature, layer) {
layer.bindPopup(feature.properties.name);
}
function map_init(map, options) {
var active_event_layer= L.geoJson(active_event_collection, {onEachFeature: onEachFeature})
var inactive_event_layer = L.geoJson(inactive_event_collection, {onEachFeature: onEachFeature})
var basemaps = {
"Gray scale": L.tileLayer('http://{s}.tiles.wmflabs.org/bw-mapnik/{z}/{x}/{y}.png', {
maxZoom: 18,
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>'
}),
Streets: L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
maxZoom: 19,
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>'
})
};
var overlayMaps = {
"Active events": active_event_layer,
"Inactive events": inactive_event_layer,
};
var features = L.control.layers(basemaps, overlayMaps).addTo(map);
map.fitBounds(active_event_layer.getBounds());
}
解决方案
推荐阅读
- c# - 如何使用方法替换特定字符串?
- react-native - Windows App 插件不适用于本机反应
- css - 如何在svg中添加折线之间的间距?
- java - 为多个入口点配置spring security?
- python - 不同类型的 gnuradio 上的多个输出的 QA_test
- azure-devops - 阻止对 AKS pod 的 Internet 访问
- php - 不在命名空间中的类
- javascript - JS中有类似数组的原因是什么
- ios - UIViewController 子类无法识别 UITapGesture
- reactjs - 使用 redux 连接函数传递 props.children 作为 React 元素