Classe 이벤트 이미터는 Nodejs를 수행합니다.

8769 단어 javascriptnode

Classe 이벤트 이미터는 NodeJ를 수행합니다.



Event Emitters são um dos conceitos mais Importantes no Node, pois é com eles que emitimos eventos, que podem ser ouvidos por outros objetos no programa. Através dessa arquitetura é que podemos conectar pedaços de código distancees entre sí.

Mas afinal, o que são Event Emitters?



Um Event Emitter é um objeto que emite notificações, ou eventos, em diferentes partes do seu ciclo de vida. Por exemplo, um servidor emite eventos em cada estágio da sua inicialização até o seu desligamento. Quase todos os 핵심 모듈은 노드 fazem uso dos event emitters, que também são Importantes para a implementationação da programação assíncrona, conceito essencial do mundo javascript를 수행합니다.

클래스 이벤트 이미터



O objeto 이벤트 이미터는 '이벤트' 모드에 상주하지 않습니다. Normalmente, não usuaríamos diretamente esse modulo, mas sim de objetos que fazem uso dele.

이벤트 발생기 클래스 이벤트 발생기, 처리 이벤트에 대한 처리 이벤트에 대한 다양한 이벤트. Alguns dos mais usados ​​são on( ), onde registramos um event, e emission( ) onde emitimos de fato o evento.

필수 항목, '이벤트' 모듈에 대한 자세한 정보는 index.js에 없습니다.

const EventEmitter = require('events');

Depois de importar o modulo, vamos criar uma classe chamada Coração com o seguinte metodo:

class Coracao extends EventEmitter {
    bater() {
        setInterval(() => {
            console.log('Tum-tum');
            this.emit('bater');
            console.log('Tum-tum');
        }, 1000)
    }
};

Acima criamos uma classe que simula um coração e que herda de Event Emitter (assim teremos acesso a todos os seus metodos), nela definimos um método chamado bater( ), que emite um evento com nobater 'nome de'

Agora, precisamos registrar um listener para sermos notificados desse eventto toda vez que ele é emitido.

const coração = new Coracao();
coração.on('bater', () => {
    console.log('Ouvindo o coração batendo');
});

Acima cadastramos uma função que 'ouve' o eventto 'bater' emitido pelo metodo bater( ) da classe coração.

Agora precisamos chamar o método para que possamos processar e emitir o eventto:

coração.bater();

콘솔 없음, 테마:

Tum-tum
Observando o coração batendo
Tum-tum
Tum-tum
Observando o coração batendo
Tum-tum
Tum-tum
Observando o coração batendo
Tum-tum
Tum-tum
Observando o coração batendo
Tum-tum
Tum-tum
Observando o coração batendo
Tum-tum
Tum-tum

Processando dados com 이벤트 이미터



Podemos também processar dados com o Event Emitter, um exemplo simples seria somar os elementos de um array, e retornar para o listener (ou receptor) o resultado da soma:

const sumEvent = new EventEmitter();

이벤트 발생기 또는 이벤트 발생기, 이벤트에 대한 자세한 내용. Depois, vamos registrar um evento que será executado quando emitido. Para isso, vamos definir o nome do evento, os dados que ele irá receber e uma função de callback que será retornada passando o resultado da soma:

sumEvent.on('sum', (numbers, callback) => {
    const result = numbers.reduce((n, sum) => sum += n);
    return callback(result);
});

Agora vamos emitir o evento passando os nossos 매개변수:

sumEvent.emit('sum', [1, 2, 3], (result) => {
    console.log(result);
}); 

Quando o evento é emitido, temos:

6

E é assim que usamos a classe Event Emitter do node.

좋은 웹페이지 즐겨찾기