Здравствуйте!
При добавлении объектов на карту объединяю их в коллекции, но данные могут приходить повторно, поэтому нужно проверить, добавлен данный объект в коллекцию или еще нет.
Сейчас есть такой код:
setGeoObjects : function (objects) {
var self = this;
$.each(objects, function (id, object) {
if (!self.collections[object.type]) {
self.collections[object.type] = new ymaps.GeoObjectCollection({}, {
preset : 'twirl#' + object.type + 'Icon'
});
}
// Сейчас для проверки вынужден записывать в отдельный объект загруженные объекты
if (!self.geoObjects[id]) {
var _object = new ymaps.GeoObject({
geometry : {
type : object.geometry.type,
coordinates : object.geometry.coordinates
},
properties : {
hintContent : object.name
}
});
self.geoObjects[id] = _object; // Хочется избавиться от этого :-)
self.collections[object.type].add(_object);
} }); }
И второй вопрос: как правильно удалить конкретный объект из коллекции?