gpt4 book ai didi

javascript - 在传单上绘制 GeoJSON

转载 作者:行者123 更新时间:2023-11-28 18:36:05 26 4
gpt4 key购买 nike

由于我发现 Leaflet 网站上的示例不是很有用,因此我尝试遵循他们的一般提示,以便在 map 上将我的 GeoJSON 绘制为轨迹。问题是,该对象已正确保存,但是当我将其添加到 map 时,它没有显示任何内容。我在这里缺少什么?我是传单新手。谢谢。

代码:

...

$.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]);
});

关于javascript - 在传单上绘制 GeoJSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37057017/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com