Проброс в options свойств меток properties из файла geojson в js

Необходимо менять цвет меток через файл geoObjects.geojson и обновлять страницу html автоматически.

  ymaps.ready(function () {

var map = new ymaps.Map('map', {
        center: [30.448166334957177, 59.9220776628873],
        zoom: 15,
        controls: ['zoomControl']
    }),
    objectManager = new ymaps.ObjectManager();
map.controls.get('zoomControl').options.set({size: 'small'});
// Загружаем GeoJSON файл, экспортированный из Конструктора карт.
$.getJSON('geoObjects.geojson')
    .done(function (geoJson) {
        geoJson.features.forEach(function (obj) {
            // Задаём контент балуна.
            obj.properties.balloonContent = obj.properties.description;
            // Задаём пресет для меток с полем iconCaption.
            if (obj.properties.iconCaption) {
                obj.options = {
                    preset: "islands#darkgreenCircleIcon"
                }
            }
        });
        // Добавляем описание объектов в формате JSON в менеджер объектов.
        objectManager.add(geoJson);
        // Добавляем объекты на карту.
        map.geoObjects.add(objectManager);
    }); 

   {"type":"FeatureCollection","metadata":{"name":"geoObjects","creator":"Yandex Map Constructor"},"features":[{"type":"Feature","id":5,"geometry":{"type":"Point","coordinates":[30.444435038298835,59.92078156674039]},"properties":{"description":"1:1:1:1:1:1:0:0:0:0:0:0:0:0:0","iconCaption":"Бадаева, 7/2","iconContent":"5","marker-color":"#ed4543"}}]}

Ответы (1 шт):

Автор решения: YaSupport

Формат geojson Конструктора несколько отличается от такового у геообъектов JS API. Потому необходимо выполнять преобразование, показанное в нашем примере.

Там же, где вы задаёте в коде пресет для меток, нужно пробрасывать в options нужные элементы properties файла Конструктора:

obj.options.set({
    fillColor: obj.properties.get('fill'),
    fillOpacity: obj.properties.get('fill-opacity'),
    strokeColor: obj.properties.get('stroke'),
    strokeWidth: obj.properties.get('stroke-width'),
    strokeOpacity: obj.properties.get('stroke-opacity')
});
→ Ссылка