Hallo-
Ich versuche einfach, eine Entwurfsversion einer Vector Tile durch eine endgültige Version zu ersetzen. Unterschiedliche Service-Endpunkte und keinerlei Modi zum Programmieren. Die Einstellungen sind in jedem Service identisch, aber der aktualisierte Service wird nicht angezeigt.
Entwurfsversion, die ich ersetzen möchte, diese funktioniert:
https://tiles.arcgis.com/tiles/tdQLEzq0fgVElWN3/arcgis/rest/services/Draft_Lifeform_Vector_Tile_Package_12_20_19/VectorTileServer
Endgültige Version, diese funktioniert nicht:
https://tiles.arcgis.com/tiles/tdQLEzq0fgVElWN3/arcgis/rest/services/Marin_County_Lifeform_Map_FINAL/VectorTileServer
Und hier ist ein Code-Snippet mit CDNs usw.
<!-- Leaflet von CDN laden -->
<link rel="stylesheet" href="https://unpkg.com/leaflet/dist/leaflet.css" />
<script src="https://unpkg.com/leaflet/dist/leaflet.js"></script>
<!-- Esri Leaflet und Esri Leaflet Vector -->
<script src="https://unpkg.com/esri-leaflet/dist/esri-leaflet.js"></script>
<script src="https://unpkg.com/esri-leaflet-vector@3/dist/esri-leaflet-vector.js"></script>
<!-- Link zur JS-Datei der Marin County-Grenze -->
<script src="GeoJsons/MarinBnd.js"></script>
<script>
// Optionen, die beim Erstellen der Karte verwendet werden sollen
var options = {
center: [38.0828, -122.7551],
zoom: 10.4,
zoomSnap: .1,
zoomControl: true
}
var map = L.map('map', options);
// fordert einige Kartenkacheln an
var tiles = L.tileLayer('https://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer/tile/{z}/{y}/{x}', 'Tiles © Esri — Esri, DeLorme, NAVTEQ, TomTom, Intermap, iPC, USGS, FAO, NPS, NRCAN, GeoBase, Kadaster NL, Ordnance Survey, Esri Japan, METI, Esri China (Hong Kong), and the GIS User Community');
// fügt diese Kacheln unserem Kartenelement hinzu
map.addLayer(tiles);
// fügt die Landkreis-Ebene zur Karte hinzu
const countyLayer = L.geoJson(county, {
style: function (feature) {
return {
opacity: 0, // setzt die Strichopazität auf null
fillOpacity: 0 // setzt die Füllopazität auf null
};
}
});
countyLayer.addTo(map);
// fordert öffentliche Vector Tile-Ebene von ArcGIS Online an
L.esri.Vector.vectorTileLayer("https://tiles.arcgis.com/tiles/tdQLEzq0fgVElWN3/arcgis/rest/services/Marin_County_Lifeform_Map_FINAL/VectorTileServer", {
// fügt den Service zur Karte hinzu
}).addTo(map);
// lässt die Landkreis-Ebene zoomen, um den Bildschirm auszufüllen
const macoZoom = countyLayer.getBounds()
// passt die Grenzen an das Ausmaß der Marin County-Grenze an
map.fitBounds(macoZoom, {
maxzoom: 8
});
</script>
Ich würde mich freuen, wenn jemand eine Idee hat, die bei der Lösung dieses Problems helfen könnte.
Danke!
Zac