Node Events 등록/삭제
이벤트 등록과 삭제는 기존 자바스크립트와 비슷하다. 모 node가 자바스크립트 기반이니깐 당연하지!! ^^
ㅁ Event등록
이벤트 등록은 addListener 또는 on을 이용하여 등록 할 수 있다.
var firstEventHandler = function(){ // 내용 } process.addListener('exit', firstEventHandler); var secondEventHandler = function(){ // 내용 } process.on('exit', secondEventHandler); |
on과 addListener 메서드 모두 동일한 기능이므로, 가독성이 좋은 on메서드를 주로 사용하자. node에서는 동일한 이벤트가 10개 초과 등록되면 에러가 발생한다. 이때 setMaxListeners(n) 메서드를 이용하여 필요 시에 추가적으로 설정해주면 에러가 발생하지 않는다.
ㅁ Event삭제
이벤트 삭제는 removeListener 메서드로 삭제할 수 있으며, 해당 이벤트 모두 삭제 하고 싶으면 removeAllListeners메서드를 이용하면 된다.
var errorHandler = function(e){ // 내용 } // 등록 process.on('uncaughtException', errorHandler); // 삭제 process.removeListener('uncaughtException', errorHandler); // 모든 이벤트 삭제 process.removeAllListeners('uncaughtException'); |
ㅁ Event 발생
emit 메서드를 이용해서 강제로 이벤트를 발생 시킬 수 있다.
process.on('fnTest', function(){ // 내용 }); process.emit('fnTest'); |