Obxecto obxecto incorporado

ObjectEventEmitter

EventEmitter é un obxecto de activación de eventos, que se pode usar para establecer o patrón de observador. Os obxectos que admiten o desencadeamento de eventos herdan deste

Cando se activa un evento, todos os oíntes asociados co evento son chamados de forma asíncrona. Tamén nos permite crear código que é altamente personalizable e flexible.

As funcións de uso común inclúen: addListener/on, once, removeListener/off, removeAllListeners e emit.

Aquí tes un código de mostra:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
var fs = require('fs'); var EventEmitter = require('events'); var event = new EventEmitter(); event.on('read_file', function(filename) { fs.readFile(filename, 'utf8', function(err, data) { if (err) { event.emit('error', err); return; } event.emit('show_content', data); }); }); event.on('error', function(err) { console.log(`Error ${err}`); }); event.on('show_content', function(content) { console.log(content); }); event.emit('read_file', 'test.txt');

event.emit('read_file', 'test.txt')Cando se executa o código de mostra anterior, o evento de instancia do emisor de eventos escoita primeiro o evento "read_file" e despois activa a operación de lectura do ficheiro cando se activa o evento ( ). Cando a lectura teña éxito, activarase o evento 'show_content'. Neste momento, executarase a función que escoitou o evento 'show_content' e amosarase o contido do ficheiro. Se se produce un erro ao ler o ficheiro, desenvólvese o evento "erro" e xestionarase o fallo da operación.

Este modelo ten grandes vantaxes en escenarios empresariais que tratan de operacións asíncronas.

relación de herdanza

%0 object object toString() toJSON() EventEmitter EventEmitter new EventEmitter() EventEmitter defaultMaxListeners on() addListener() prependListener() once() prependOnceListener() off() removeListener() removeAllListeners() setMaxListeners() getMaxListeners() listeners() listenerCount() eventNames() emit() object->EventEmitter ChildProcess ChildProcess EventEmitter->ChildProcess DgramSocket DgramSocket EventEmitter->DgramSocket FSWatcher FSWatcher EventEmitter->FSWatcher LruCache LruCache EventEmitter->LruCache Service Service EventEmitter->Service StatsWatcher StatsWatcher EventEmitter->StatsWatcher WebSocket WebSocket EventEmitter->WebSocket WebView WebView EventEmitter->WebView Worker Worker EventEmitter->Worker

Construtor

EventEmitter

Construtor

1
new EventEmitter();

obxecto

obxecto de activación de eventos

1
EventEmitter new EventEmitter;

propiedades estáticas

defaultMaxListeners

Enteiro, o número máximo global predeterminado de oíntes

1
static Integer EventEmitter.defaultMaxListeners;

función de membro

on

Vincular un controlador de eventos ao obxecto

1 2
Object EventEmitter.on(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Vincular un controlador de eventos ao obxecto

1
Object EventEmitter.on(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto empregarase como nome do evento e o valor do atributo como función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

addListener

Vincular un controlador de eventos ao obxecto

1 2
Object EventEmitter.addListener(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Vincular un controlador de eventos ao obxecto

1
Object EventEmitter.addListener(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto empregarase como nome do evento e o valor do atributo como función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

prependListener

Vincular un controlador de eventos á orixe do obxecto

1 2
Object EventEmitter.prependListener(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Vincular un controlador de eventos á orixe do obxecto

1
Object EventEmitter.prependListener(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto empregarase como nome do evento e o valor do atributo como función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

once

Vincula un controlador de eventos único ao obxecto. O manejador único só se activará unha vez.

1 2
Object EventEmitter.once(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Vincula un controlador de eventos único ao obxecto. O manejador único só se activará unha vez.

1
Object EventEmitter.once(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto empregarase como nome do evento e o valor do atributo como función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

prependOnceListener

Vincular un controlador de eventos á orixe do obxecto

1 2
Object EventEmitter.prependOnceListener(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Vincular un controlador de eventos á orixe do obxecto

1
Object EventEmitter.prependOnceListener(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto empregarase como nome do evento e o valor do atributo como función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

off

Desasignar unha función da cola de procesamento de obxectos

1 2
Object EventEmitter.off(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Cancela todas as funcións da cola de procesamento de obxectos

1
Object EventEmitter.off(String ev);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Desasignar unha función da cola de procesamento de obxectos

1
Object EventEmitter.off(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto úsase como nome do evento e o valor do atributo úsase como función de procesamento de eventos.

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

removeListener

Desasignar unha función da cola de procesamento de obxectos

1 2
Object EventEmitter.removeListener(String ev, Function func);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento
  • func: Función, especifique a función de procesamento de eventos

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Cancela todas as funcións da cola de procesamento de obxectos

1
Object EventEmitter.removeListener(String ev);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Desasignar unha función da cola de procesamento de obxectos

1
Object EventEmitter.removeListener(Object map);

Parámetros de chamada:

  • map: Obxecto, especifica a relación de asignación de eventos, o nome do atributo do obxecto úsase como nome do evento e o valor do atributo úsase como función de procesamento de eventos.

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

removeAllListeners

Cancela todos os oíntes de todos os eventos da cola de procesamento do obxecto. Se se especifica un evento, elimina todos os oíntes do evento especificado.

1
Object EventEmitter.removeAllListeners(String ev);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

Cancela todos os oíntes de todos os eventos da cola de procesamento do obxecto. Se se especifica un evento, elimina todos os oíntes do evento especificado.

1
Object EventEmitter.removeAllListeners(Array evs = []);

Parámetros de chamada:

  • evs: Matriz, especifique o nome do evento

Resultados de devolución:

  • Object, devolve o propio obxecto do evento para facilitar as chamadas en cadea

setMaxListeners

O límite predeterminado no número de oíntes, só para compatibilidade

1
EventEmitter.setMaxListeners(Integer n);

Parámetros de chamada:

  • n: Número enteiro, especifique o número de eventos

getMaxListeners

Obtén o número límite predeterminado de oíntes, só para compatibilidade

1
Integer EventEmitter.getMaxListeners();

Resultados de devolución:

  • Integer, devolve a cantidade límite predeterminada

listeners

Consulta a matriz de escoita para o evento especificado do obxecto

1
Array EventEmitter.listeners(String ev);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Array, devolve a matriz de escoita para o evento especificado

listenerCount

Consulta o número de oíntes para o evento especificado do obxecto

1
Integer EventEmitter.listenerCount(String ev);

Parámetros de chamada:

  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Integer, devolve o número de oíntes para o evento especificado

Consulta o número de oíntes para o evento especificado do obxecto

1 2
Integer EventEmitter.listenerCount(Value o, String ev);

Parámetros de chamada:

  • o: Valor, especifica o obxecto da consulta
  • ev: Cadea, especifica o nome do evento

Resultados de devolución:

  • Integer, devolve o número de oíntes para o evento especificado

eventNames

Consulta o nome do evento do oínte

1
Array EventEmitter.eventNames();

Resultados de devolución:

  • Array, devolve unha matriz de nomes de eventos

emit

Activa un evento de forma activa

1 2
Boolean EventEmitter.emit(String ev, ...args);

Parámetros de chamada:

  • ev: Cadea, nome do evento
  • args: ..., os parámetros do evento pasaranse á función de procesamento de eventos

Resultados de devolución:

  • Boolean, devolve o estado de activación do evento, devolve verdadeiro se hai un evento de resposta, se non, devolve falso

toString

Devolve a representación en cadea do obxecto. Polo xeral, devólvese "[Obxecto nativo]". O obxecto pódese volver implementar segundo as súas propias características.

1
String EventEmitter.toString();

Resultados de devolución:

  • String, devolve a representación en cadea do obxecto

toJSON

Devolve unha representación en formato JSON do obxecto, devolvendo xeralmente unha colección de propiedades lexibles definidas polo obxecto.

1
Value EventEmitter.toJSON(String key = "");

Parámetros de chamada:

  • key: Cadena, non usada

Resultados de devolución:

  • Value, devolve un valor que contén JSON serializable