chuanyurug
@chuanyurug
Системная аналитика, веб-дизайн

Как во Vue.js выполнить 2 события по @click?

Используется библиотека Vuetify 2, компонент Item Groups, но данная задача подойдет ко всем элементам с toggle.
Код выложил здесь.
Цели задачи следующие:
1) По событию @click="toggle" выполнить еще одно действие (записать во Vuex ключ). Я знаю что для этого нужно создавать метод, но как в методе прописать это действие toggle?
2) Как присвоить индекс элемента идентичным свойству key в массиве items? Мне нужно во Vuex передавать не 0, 1 или 2, а то свойство key выбранного элемента.
  • Вопрос задан
  • 5788 просмотров
Решения вопроса 1


Можно просто через запятую перечислить методы:
@click ="toggle($event), clickAction"

*Для работы toggle нужно передавать обьект события $event, по умолчанию, когда прописан один метод, $event - передается автоматически
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
@architawr
"Ok, Google" и все твои проблемы решены
div(@click="multiplyActions")

methods: {
  multiplyActions() {
    this.foo();
    this.bar();
    this.baz();
  },

  foo() {
    console.log(123213);
  },
  
  .....
}

?
Ответ написан
Комментировать
В коде примера же в нормальном направлении движетесь.
Ничего не мешает ведь расширить логику метода.
Ответ написан
lina666
@lina666
Изучаю веб ЯП.
если вдруг кому то понадобится, вот так можно сделать 2 метода по 1му событию
<div
@click="sendRequest('DELETE', {ids: [deleteModal.itemId]}); deleteModal.show = false"
></div>
Ответ написан
Комментировать
@Aleksey-Nuzhdin
Во VUE3 у меня не заработал вариант: @click="foo, bar"
Но отлично работает, сразу с вызовом: @click="foo(), bar()"
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы