Je ne parviens pas à afficher mes données sur ma carte. Le fichier geojson est énorme, donc je le charge d'une source externe. Mon fichier index.html ressemble à ceciChargement de données geojson dans Mapbox
<div id='map'></div>
<script>
mapboxgl.accessToken = 'pk.eyJ1Ijoic2VhbmRyYWFkbG96ZSIsImEiOiJjajA3cW1pOTcwMDA5Mndvd2hicHlmNWc1In0.7bt7sPXDoymYJyVDvVmqZw';
var map = new mapboxgl.Map({
container: 'map', // container id
style: 'mapbox://styles/seandraadloze/cj1dcc3ho00f82smkvjxp4frb', //hosted style id
center: [24.530,-32.254], // starting position
zoom: 14.5 // starting zoom
});
var url = 'http://bestersurveys.co.za/htmlsite/quintin.geojson';
var source = new map.addSource()({
data: url
});
window.setInterval(function() {
source.setData(url);
}, 1000);
map.on('style.load', function() {
map.addSource("markers", source);
map.addLayer({
"id": "markers",
"type": "circle",
"visibility": "visible",
"source": "markers",
"paint": {
"circle-radius": 0.2,
"circle-color": "#f3f3f3"
}
});
});
</script>
</body>
</html>
Je reçois cette erreur de la console
map.js:895 Uncaught TypeError: Cannot read property 'addSource' of undefined
at new e.addSource (map.js:895)
at maptest.html:27
Vous pouvez consulter la carte ici - http://bestersurveys.co.za/htmlsite/maptest.html
Quelqu'un peut-il me dire où je suis ça va mal?
Merci
Sean
Je devine que cette partie 'var la source = new map.addSource() ({'. Retirez le nouveau mot-clé. –
Salut compagnon, merci. Bien que l'erreur triée, mais toujours pas de données, ma console imprime maintenant Uncaught erreur: style ne se fait pas à charger t._checkLoaded (style.js: 272) à t.addSource (style.js: 372) à e.addSource (carte. js: 895) à maptest.html: 27 –
Hmm, je n'ai jamais rencontré ça auparavant. Le fait de mettre tout ce qui se trouve entre les 'map.on ('style.load'') pourrait résoudre le problème, donc votre code est déclenché dès que les styles sont chargés. –