Daha çox

Yanlış GeoJSON obyekti


Leaflet ilə GeoJSON-u işə salmağa çalışıram. Bir varı göstərməyə çalışdığım GeoJSON olaraq birbaşa təyin etdiyim zaman hər şey yaxşı işləyir:

var censustracts = {"type": "FeatureCollection",…

Bu, əla işləyir, amma ssenarimi koordinatlar və heç nə ilə doldurmur. Problem, L.geoJson () funksiyasını faylın özündə istifadə etməyə çalışdığım zaman yaranır. Bu səhv edir:

var censustracts = L.geoJson ("tractsedited.geojson"). addTo (xəritə);

AJAX zəngi vasitəsilə faylı yükləməlisiniz, birbaşa yükləmə işə yaramır. Ya AJAX plaginini istifadə edə bilərsiniz, ya da yükləməyə çalışdığınız faylda qlobal bir dəyişən yarada və birbaşa istifadə edə bilərsiniz.


Michal Zimmermann cavabına əlavə olaraq:

Bir plagin istifadə etmək istəmirsinizsə və veb səhifəni yüklədikdən sonra GeoJSON fayllarını yükləyə bilmək istəyirsinizsə, sadə bir ajax sorğusundan da istifadə edə bilərsiniz:

$ .ajax ({type: "POST", url: 'your_geojson_url', dataType: 'json', success: function (response) {geojsonLayer = L.geoJson (response) .addTo (map); map.fitBounds (geojsonLayer). getBounds ());}});

fəaliyyətdəki nümunə: http://jsfiddle.net/expedio/qgkbrjwt/