Пространства имен в Vue js events - PullRequest
0 голосов
/ 01 ноября 2018

Возможно ли иметь пространства имен с событиями, как в JQuery?

хотелось бы уметь:

$.on('click.namespace')
$.on('change.namespace')
$.off('.namespace') // unregister both

1 Ответ

0 голосов
/ 01 ноября 2018

Нет , и обычно не требуется в Vue:

При использовании @eventName="handler" в шаблоне Vue обрабатывает регистрацию и отмену регистрации обработчиков событий.

И поскольку вы можете указать имена событий, составляющих $emit s, у вас не будет коллизий имен.

Чтобы вручную зарегистрировать и отменить регистрацию EventListener, когда компонент уничтожен:

emitter.$on(component.handleClick)
component.$on("$destroy", () => emitter.$off('click', component.handleClick))

Объявите handleClick в methods:, который создает уникальный обратный вызов, связанный с компонентом.

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