Функция mapbox ForEach

При извлечении данных из файла геойсона, который хранится в Интернете. Функция forEach не может прочитать функции, которые я установил в файле geojson. Ниже приведена часть кода.

map.on('load', function() {
            // Add a GeoJSON source containing place coordinates and information.
            map.addSource('orders', {
                type: 'geojson',
                data: ordersjson,
            });

            map.addLayer({
                        id: "layerID",
                        type: "symbol",
                        source: 'orders',
                        layout: {
                            "icon-image": "circle" + "-15",
                            "icon-allow-overlap": true,
                        },
                    });


            map.getLayer('layerID').features.forEach(function(feature) {
                var earthquakeID = feature.properties['primary ID']

            });

1 ответ

Сам слой не имеет никаких данных вообще. Вам нужно получить источник, содержащий данные. Слой только для определения стиля.

То, что вы хотите, это что-то вроде этого:

map.getSource('orders')._data.features.forEach(function(feature) {
  // do something
});

Другие вопросы по тегам