Node - EventEmitter

Namlulu·2021년 12월 6일
0

Node

목록 보기
1/5
const EventEmitter = require('events');
const emitter = new EventEmitter();

const callback1 = (args) => {
  console.log('first callback - ', args);
};
emitter.on('ellie', callback1);

emitter.on('namlulu', (args) => {
  console.log('second callback - ', args);
});

emitter.emit('namlulu', { message: 1 });
emitter.emit('namlulu', { message: 2 });
emitter.removeAllListeners();
emitter.emit('namlulu', { message: 3 });

=> node events 모듈에는 on, emit과 같은 메서드가 있으며 이를 통해 쉽게 어플리케이션 개발이 가능하다.

const EventEmitter = require('events');

class Logger extends EventEmitter {
  log(callback) {
    this.emit('log', 'started...');
    callback();
    this.emit('log', 'ended!');
  }
}

module.exports.Logger = Logger;

=> 다음과 같이 상속 구조를 통해 loging 구조도 쉽게 개발이 가능하다.

profile
Better then yesterday

0개의 댓글