yandex-maps-unofficial / vue-yandex-map

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

Как передать в маркер объект и получить его при срабатывании callback'а? #61

Closed killbox closed 6 years ago

killbox commented 6 years ago

Шаблон:

<yandex-map :coords="[lat, lng]">
  <ymap-marker v-for="offer in offers" :key="offer.id"
    marker-type="placemark"
    :coords="[offer.lat, offer.lng]"
    :callbacks="callback">
      </ymap-marker>
</yandex-map>

Компонент:

export default {
  components: {
    yandexMap,
    ymapMarker
  }
  data() {
    return {
      callback: {
        click: function(e) {
          // Тут необходимо получить объект offer
        }
      }
    }
  }
}
PNKBizz commented 6 years ago

Привет! Я думаю тебе нужно связывать объект с id маркера, при клике получать последний и выбирать нужный оффер

pandemozhno commented 5 years ago
<ymap-marker v-for="(mrk, index) in Markers" :callbacks="{
          click: () =>{
              markerCallback(mrk.id)
          }
        }" />

Т.е. используя click: () =>{ markerCallback(mrk.id) } можно передавать в любой method компонента любые параметры