const EventEmitter = require('events'); const myEvent = new EventEmitter(); myEvent.addListener('방문', () => { console.log('방문해주셔서 감사합니다.'); //res.sendFile(html파일) }) //.addListener와 .on은 같은 기능이다. //.on을 쓰는 것이 효율적일 것이다. //하나의 같은 이벤트에 여러개의 .on을 붙여도 된다. myEvent.on('종료', ()=> { console.log('안녕히가세요.'); }) myEvent.on('종료', ()=> { console.log('또 방문해주세요.'); }) //.once는 특정 이벤트에 대하여 한번만 실행된다. myEvent.once('특별이벤트', () => { console.log('한번만 실행된다') }) //임의로 생성한 이벤트를 호출하는 방법은 .emit myEvent.emit('방문'); myEvent.emit('종료'); myEvent.emit('특별이벤트'); //.on으로 생성한 이벤트를 한꺼번에 삭제하는 방법 .removeAllListeners myEvent.removeAllListeners('종료'); //하나의 이벤트에 붙은 여러개의 listenr 중에서 선택하여 삭제하는 방법 //콜백으로 지정되어 있어야 한다. const callback = () => { console.log('반갑습니다') } myEvent.on('시작1', () => { console.oog('안녕하세요') }) myEvent.on('시작1', callback); myEvent.removeListener('시작1', callback); //callback으로 붙은 listener의 반갑습니다 부분만 삭제될 것이다.
해당 이벤트에 몇개의 Listener가 있는지 궁금하면, "myEvent.listenerCount('시작1')"과 같은 방식으로 하면 된다.
this - Javascript (0) | 2019.05.29 |
---|---|
예외(예기치 못한 에러) 처리하기 - Nodejs (0) | 2019.05.14 |
Buffer & Stream - Nodejs (0) | 2019.05.14 |
fs 모듈 (동기와 비동기) - Nodejs (0) | 2019.05.14 |
util(deprecate, promisify) - Nodejs (0) | 2019.05.14 |
댓글 영역