Daha çox

Vərəqə İşarəsi-Küməsi JSONP GeoServer


Ümid edirəm eyni köməyi də buradan ala bilərəm. Vərəqə xəritəsi hazırlamağa başladım, xahiş edirəm buraya baxın: http://gis.xyz/leaflet2.html Bu xəritədə postgis nöqtəsi (İngilis əsaslı) xüsusiyyətlərimi klaster metodu ilə göstərmək istəyirəm. Nöqtələr onsuz da xəritədədir (geoserver-jsonp istifadə etdim), ancaq klaster təbəqəsinə qatına necə əlavə edə biləcəyimi anlaya bilmirəm. Ssenariyə markercluster nümunəsi də əlavə etdim, təbəqəmi belə görmək istərdim. Bu sualı cavablandırmaq üçün kimsə mənə kömək etsəydi, çox yaxşı olardı.

var owsrootUrl = 'http://217.8.255.188:8080/geoserver/opengeo/ows'; var defaultParameters = {service: 'WFS', version: '2.0', request: 'GetFeature', typeName: 'opengeo: evernote_geom', outputFormat: 'text / javascript', format_options: 'callback: getJson', SrsName: 'EPSG : 4326 '}; var parametrləri = L.Util.extend (defaultParameters); var URL = owsrootUrl + L.Util.getParamString (parametrlər); var WFSLayer = sıfır; var ajax = $ .ajax ({url: URL, dataType: 'jsonp', jsonpCallback: 'getJson', uğur: funksiya (cavab) {WFSLayer = L.geoJson (cavab, {stil: function (xüsusiyyət) {return {vuruş : false, fillColor: 'FFFFFF', fillOpacity: 0};}, onEachFeature: function (feature, layer) {popupOptions = {maxWidth: 600}; layer.bindPopup ('

'+ feature.properties.url +'


'+ feature.properties.title, popupOptions); }}). addTo (xəritə); }});

Bunu etmək üçün istifadə edə bilərsinizYarpaq.markerclusterburaya əlavə edin https://github.com/Leaflet/Leaflet.markercluster. Layihənizə əlavə etdikdən sonra bir marker klaster qrupu təyin etməlisiniz:

var markerləri = L.markerClusterGroup ();

Sonra əvvəl bu klaster qrupuna işarələr əlavə etməlisiniz və bundan sonra qrupu xəritəyə əlavə etməlisiniz:

markers.addLayer (a_group_of_markers); map.addLayer (markerlər);

Kodunuzda işarələri Ajax ilə yükləyirsiniz və sonra onları xəritəyə əlavə edirsiniz, buna görə ən düz yol bu olacaq:

var markerləri = L.markerClusterGroup (); var ajax = $ .ajax ({url: URL, dataType: 'jsonp', jsonpCallback: 'getJson', uğur: funksiya (cavab) {WFSLayer = L.geoJson (cavab, {stil: function (xüsusiyyət) {return {vuruş : false, fillColor: 'FFFFFF', fillOpacity: 0};}, onEachFeature: function (feature, layer) {popupOptions = {maxWidth: 600}; layer.bindPopup ('

'+ feature.properties.url +'


'+ feature.properties.title, popupOptions); }}). addTo (markers.addTo (map)); }});


Videoya baxın: cors, json, jsonp - undergrad webdev summer 1 2017 (Oktyabr 2021).