我正在寻找一种解决方案,以适应传单地图的界限,以显示已加载的geoJSON文件的内容。
为了加载文件我使用leaflet-ajax。我已经尝试了这个,但我不知道如何才能获得图层的界限。任何建议我如何调整显示的地图部门以显示geoJSON文件?感谢。
var geojsonLayer = new L.GeoJSON.AJAX('http://localhost:8080/test.geojson');
geojsonLayer.addTo(this.map);
this.map.fitBounds(geojsonLayer.getBounds());

答案 0 :(得分:6)
AJAX表示asynchronous:因此,在加载内容之前,fitBounds调用将运行。要正确执行此操作,您需要等待data:loaded事件。
var geojsonLayer = new L.GeoJSON.AJAX('http://localhost:8080/test.geojson');
geojsonLayer.addTo(this.map);
geojsonLayer.on('data:loaded', function() {
this.map.fitBounds(geojsonLayer.getBounds());
}.bind(this));
使用.bind(this)
,因为回调将have a different this value by default。