Добрый день! Я создаю карту с кучей точек на ней. Точки добавляю с помощью ObjectManager:
const map = new ymaps.Map(document.getElementById('map'), { center: [63, 121], zoom: 6 }); const objectManager = new ymaps.ObjectManager({ clusterize: true }); objectManager.add({ type: 'FeatureCollection', features: [ { type: 'Feature', id: 1, geometry: { type: 'Point', coordinates: [64, 122] }, properties: { balloonContentBody: 'Загрузка...' } }, { type: 'Feature', id: 2, geometry: { type: 'Point', coordinates: [62, 120] }, properties: { balloonContentBody: 'Загрузка...' } } // ... ] }); map.geoObjects.add(objectManager);
Как в произвольный момент времени изменить текст балуна точки? Желательно не отказываться от ObjectManager, чтобы не жертвовать производительностью.
Пробовал так, получилось только изменить внешний вид метки:
objectManager.objects.setObjectOptions(1, { preset: 'islands#redIcon', balloonContentBody: 'Загружено (бла бла бла)', properties: { balloonContentBody: 'Загружено (бла бла бла)' } });
Ещё пробовал так:
objectManager.objects.getById(1).properties.balloonContentBody = 'Загружено (бла бла бла)';
В этом случае новый текст применяется только после открытия балуна (т.е. если балун открыт, текст внутри не поменяется пока не закроешь и не откроешь балун). Есть ли способ получше?