Динамическая ссылка

1
 <modal v-for="(data,key) in passedInData" :key="data.id" :ref="'modal' + key">    
 <img src="~/assets/images/lock.svg" @click="openModal(key)"  style="cursor:pointer" > 

    openModal: function(id) {
      let modal = this.$refs['modal' + id];
      let index = 'modal' + id;
      console.log(this.$refs['modal' + id]);
      console.log(this.$refs[index].showModal); 
    }

Я перебираю компонент через v-for и даю динамическую ссылку на каждый элемент. При нажатии кнопки я вызываю функцию, возвращающую правильную ссылку, если я делаю console.log (это. $ Refs [index]), однако, когда я пытаюсь вызвать метод, выполните: console.log(this. $ Refs [ index].showModal), который в этом случае showModal является методом в дочернем компоненте, он возвращает undefined.

  • 1
    использует <modal v-for="(data,key) in passedInData" :key="data.id" ref="modal"> , а затем доступ к нему this.$refs.model[index]
Теги:
vue.js

1 ответ

0

Я решил эту проблему, выполнив: this. $ Refs [index] [0].showModal();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню