바르고 뜨겁게
[NodeJS] events 모듈 본문
events 모듈
const EventEmitter = require('events');
const endCallback = ()=>{
console.log('안녕히 가세요');
}
// 이벤트를 만들 수 있게 해주는 모듈
// myEvent.addListener(이벤트명, 콜백리스너);
const myEvent = new EventEmitter();
// '방문'이라는 이름의 이벤트 생성
myEvent.addListener('방문', ()=>{
console.log('안녕하세요? xxx 홈페이지 입니다')
});
// addListener = on (같은 기능:별명)
myEvent.on('종료', ()=>{
console.log('종료 되었습니다');
});
// 같은 이벤트에 여러개의 리스너 가능
myEvent.on('종료', endCallback);
// 한번만 실행됨
myEvent.once('한번실행', ()=>{
console.log('한번만 실행');
});
// 이벤트 실행
// myEvent.emit(이벤트명);
myEvent.emit('방문');
myEvent.emit('종료');
myEvent.emit('한번실행');
myEvent.emit('한번실행');
// 모든 리스너를 해제할 수 있다.
myEvent.removeAllListeners('방문');
myEvent.emit('방문'); // 실행되지 않음
// 특정 리스너만 해제
myEvent.removeListener('종료', endCallback);
myEvent.emit('종료');
console.log(myEvent.listenerCount('종료'));
안녕하세요? xxx 홈페이지 입니다 종료 되었습니다 안녕히 가세요 한번만 실행 종료 되었습니다 1
'자바스크립트 > Node Js' 카테고리의 다른 글
[NodeJS] 노드JS로 서버 만들기 (0) | 2018.12.27 |
---|---|
[NodeJS] 예외처리 (0) | 2018.12.27 |
[NodeJS] FS(파일시스템) 모듈 - 동기와 비동기 (0) | 2018.12.27 |
[NodeJS] util 모듈(deprecate, promisify) (0) | 2018.12.27 |
[NodeJS] crypto 양방향 암호화(cipher) (0) | 2018.12.18 |
Comments