yandex-maps-unofficial / vue-yandex-map

Yandex Maps Component for VueJS
MIT License
359 stars 103 forks source link

Как получить список меток, которые в данный момент видны на карте? #86

Closed CubaJas closed 4 years ago

CubaJas commented 5 years ago

Собственно сабж.

tjslash commented 5 years ago

со стороны клиента или сервера?

CubaJas commented 5 years ago

со стороны клиента или сервера?

У меня на карте 1000+ меток, когда я приближаю, соответственно в видимой области N из этой тыщи видны. Есть ли возможность получить список этих меток в этом компоненте?

tjslash commented 5 years ago
let filter = group.filter((obj) => {
    return this.map.getBounds().contains(obj.getGeoPoint());
});
CubaJas commented 5 years ago
let filter = group.filter((obj) => {
    return this.map.getBounds().contains(obj.getGeoPoint());
});

Прошу прощения, я ещё не очень хорошо плаваю во Vue. У меня есть App компонент, в нем свойство components подключает компонент yandexMap, в #app вызываю yanadex-map где у меня group(как я понимаю это placemarks?) и map в App? Был бы безмерно благодарен, если разжуёте немного.

CubaJas commented 5 years ago

group = new YMaps.GeoObjectCollection(); как получить YMaps из компонента?

PNKBizz commented 5 years ago

@CubaJas это глобальная переменная. Доступна после инициализации компонента.

CubaJas commented 5 years ago

@CubaJas это глобальная переменная. Доступна после инициализации компонента.

@PNKBizz ок, я нашёл её. Далее проблема ` let group = new ymaps.GeoObjectCollection();

      let filter = group.filter((obj) => {
        return this.map.getBounds().contains(obj.getGeoPoint());
      });

console.log(filter) ` Говорит group.filter is not a function что и понятно, судя по тому что group объект.

mirecl commented 5 years ago

Решили проблему?

alexlibre commented 5 years ago

Присоединяюсь к вопросу И еще, как можно разрулить фильтрацию видимых меток, если они добавлены через <ymap-marker v-for>?