Обрабатывать разные события клика на одном элементе - PullRequest
0 голосов
/ 14 апреля 2019

Я пытаюсь реализовать решение, которое позволяет подключить 3 разных обработчика к элементу, но ни один не должен запускать другие.

Использование https://vuejs.org/v2/guide/events.html в качестве ссылки

<div @click.ctrl="methodA" @click="methodB" @contextmenu.ctrl="methodC"></div>

Я пытался случайным образом использовать модификатор .stop для каждого, но я не могу предотвратить, чтобы methodA также вызывал methodB при нажатии.Каков будет правильный способ / модификаторы для использования или будет иметь значение порядок, в котором я прикрепляю обработчики?

Редактировать

https://codepen.io/anon/pen/JVrGKo

1 Ответ

1 голос
/ 14 апреля 2019

Интересно, что я создал свою собственную ручку, чтобы проверить это, и я мог видеть то же самое, что вы описали в своих вопросах, там же, но с созданной вами ручкой я не мог видеть, что это происходит.

Во всяком случае, имеет смысл, что @click срабатывает при запуске @ click.ctrl. Но вы можете предотвратить это, используя модификатор .exact , поэтому события запускаются только при использовании точной комбинации. Как это:

<div 
  @click.ctrl="methodA" 
  @click.exact="methodB"
  @contextmenu.ctrl="methodC"
></div>

Используйте эту ручку в качестве примера

Дайте мне знать, если это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...