EventeEmitter의 모든 이벤트를 가져오는 방법(노드.js)
5120 단어 Node.jseventemittertech
Node.jsEventEmitter는 편리하지만 이벤트를 많이 준비해서 사용하면 발생한 사건을 총괄하고 싶어요.
단, 표준 노드.js에서는 모든 사건을 종합해서 얻을 수 없습니다.
해결 방법 중 하나
EventEmitter2 등에 대응하는 라이브러리를 사용합니다.
예:
const EventEmitter2 = require('eventemitter2');
const emitter = new EventEmitter2();
emitter.on('*', () => console.log('EventEmitter2'));
emitter.emit('event');
이제 모든 이벤트가 와일드카드 문자(*)로 검색됩니다.해결 방법 2
Node.확장 js의 EventeEmitter입니다.
확인을 위해 도서관을 이용할 정도는 아닌 것으로 추천합니다.
그렇게 많은 기능도 필요 없고, 헛되이 프로그램 라이브러리를 늘리고 싶지도 않아서 나는 줄곧 사용하고 있다.
예:
const EventEmitter = require('events');
class ExtendEventEmitter extends EventEmitter {
emit(name, ...args) {
return super.emit('*', name, ...args);
}
}
const event = new ExtendEventEmitter();
event.on('*', () => console.log('ExtendEventEmitter'));
emitter.emit('event');
(특별히 emit를 사용하지 않아도 되고class가 확장된 곳에서log를 사용할 수 있지만 *
다시 emit를 사용하면 사용하기 쉬울 것이다)총결산
누군가 모든 이벤트를 얻으려는 것 같아. 도서관도 많아.
그러나 클라스 확장만 하면 되기 때문에 일부러 프로그램 라이브러리를 사용할 필요가 있을 줄은 몰랐다.
Reference
이 문제에 관하여(EventeEmitter의 모든 이벤트를 가져오는 방법(노드.js)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/mouse_484/articles/listen-to-all-events-of-eventemitter텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)