Node.js EventEmitter: как привязать контекст класса к слушателю событий, а затем удалить этот слушатель

Есть ли способ доступа к контексту класса в методе прослушивателя событий с возможностью его удаления?Пример 1:В этом примере удаление слушателя работает, но метод ---- +: = 1 =: + ---- не имеет доступа к контексту класса с использованием ---- +: = 2 =: + ---- .---- +: = 3 =: + ---- указывает на контекст EventEmitter, поэтому ---- +: = 4 =: + ---- недоступен.Пример 2:В этом примере я использую функцию ---- +: = 6 =: + ---- для привязки контекста класса к прослушивателю событий.Теперь метод ---- +: = 7 =: + ---- имеет доступ к контексту класса, используя ---- +: = 8 =: + ---- => ---- +: = 9 =: + ---- доступен, но слушатель не может быть удален с помощью ---- +: = 10 =: + ---- - кажется, что ---- +: = 11 =: + ---- создаетновая анонимная функция, поэтому нет ссылки на ограниченного слушателя.Пример 3:В этом примере я использую стрелочную функцию, чтобы сохранить контекст класса в прослушивателе событий.---- +: = 13 =: + ---- метод имеет доступ к контексту класса с использованием ---- +: = 14 =: + ---- , но слушатель не может быть удален (нет ссылки наограниченный слушатель, как в примере 2).Я пробовал альтернативную библиотеку событий - EventEmitter3, которая поддерживает настраиваемый контекст для событий (контекст класса можно передать в качестве третьего параметра функции ---- +: = 15 =: + ---- ( ---- +: = 16 =: + ---- ), он работает отлично, но я бы предпочел использовать включенный EventEmitter из Node.js.
7 голосов | спросил Dominik Palo 2 +03002016-10-02T22:12:45+03:00312016bEurope/MoscowSun, 02 Oct 2016 22:12:45 +0300 2016, 22:12:45

0 ответов


Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132