簡體   English   中英

在Leaflet上繪制GeoJSON

[英]Draw GeoJSON on Leaflet

由於我沒有發現Leaflet網站上的示例非常有用,因此我嘗試遵循它們的一般性提示,以便將我的GeoJSON繪制在地圖上作為軌跡。 問題是,該對象已正確保存,但是當我將其添加到地圖時,它什么也沒有顯示。 我在這里想念什么? 我是Leaflet的新手。 謝謝。

碼:

...

$.ajax('2016-05-04 13-13-36.gpx').done(function(response) {
    geo = toGeoJSON.gpx(response);
});

angular.element($elem[0]).append(angular.element('<div id="trackmap'+ trackmapCount +'" style="width: 100%; height: calc(100% - 25px); border: 1px solid #ccc"></div>'));
trackmaps[trackmapCount] = new L.Map('trackmap'+ trackmapCount +'', {center: new L.LatLng(center[0], center[1]), zoom: 10});
var layer1 = osm.addTo(trackmaps[trackmapCount]);

L.geoJson(geo, {
style: myStyle
}).addTo(trackmaps[trackmapCount]);

$.ajax是異步方法。 這意味着在請求完成並調用.done回調函數之前, geo不存在。 您將需要在回調內部創建L.geoJson對象:

$.ajax('2016-05-04 13-13-36.gpx').done(function(response) {
  geo = toGeoJSON.gpx(response);
  L.geoJson(geo, {
    style: myStyle
  }).addTo(trackmaps[trackmapCount]);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM