Objeto incorporado

ObjetoEventoEmisor

EventEmitter es un objeto de activación de eventos, que se puede utilizar para establecer el patrón de observador. Todos los objetos que admiten la activación de eventos heredan de este

Cuando se activa un evento, todos los oyentes asociados con el evento se llaman de forma asincrónica. También nos permite crear código altamente personalizable y flexible.

Las funciones comúnmente utilizadas incluyen: addListener/on, once, removeListener/off, removeAllListeners y emit.

Aquí hay un código de muestra:

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')Cuando se ejecuta el código de muestra anterior, el evento de instancia del emisor de eventos primero escucha el evento 'read_file' y luego activa la operación de lectura del archivo cuando se activa el evento ( ). Cuando la lectura sea exitosa, se activará el evento 'show_content'. En este momento, se ejecutará la función que escuchó el evento 'show_content' y se mostrará el contenido del archivo. Si se produce un error al leer el archivo, se activa el evento de "error" y se gestiona el error de la operación.

Este modelo tiene grandes ventajas en escenarios empresariales que tratan con operaciones asincrónicas.

relación de herencia

%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

Constructor

EventEmitter

Constructor

1
new EventEmitter();

objeto

objeto desencadenante de evento

1
EventEmitter new EventEmitter;

propiedades estáticas

defaultMaxListeners

Entero, el número máximo global predeterminado de oyentes

1
static Integer EventEmitter.defaultMaxListeners;

función miembro

on

Vincular un controlador de eventos al objeto

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Vincular un controlador de eventos al objeto

1
Object EventEmitter.on(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usará como nombre del evento y el valor del atributo se usará como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

addListener

Vincular un controlador de eventos al objeto

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Vincular un controlador de eventos al objeto

1
Object EventEmitter.addListener(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usará como nombre del evento y el valor del atributo se usará como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

prependListener

Vincular un controlador de eventos al origen del objeto

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Vincular un controlador de eventos al origen del objeto

1
Object EventEmitter.prependListener(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usará como nombre del evento y el valor del atributo se usará como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

once

Vincula un controlador de eventos de una sola vez al objeto. El controlador de eventos de una sola vez solo se activará una vez.

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Vincula un controlador de eventos de una sola vez al objeto. El controlador de eventos de una sola vez solo se activará una vez.

1
Object EventEmitter.once(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usará como nombre del evento y el valor del atributo se usará como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

prependOnceListener

Vincular un controlador de eventos al origen del objeto

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Vincular un controlador de eventos al origen del objeto

1
Object EventEmitter.prependOnceListener(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usará como nombre del evento y el valor del atributo se usará como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

off

Desasignar una función de la cola de procesamiento de objetos

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Cancelar todas las funciones en la cola de procesamiento de objetos

1
Object EventEmitter.off(String ev);

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Desasignar una función de la cola de procesamiento de objetos

1
Object EventEmitter.off(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usa como nombre del evento y el valor del atributo se usa como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

removeListener

Desasignar una función de la cola de procesamiento de objetos

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

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.
  • func: Función, especifique la función de procesamiento de eventos

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Cancelar todas las funciones en la cola de procesamiento de objetos

1
Object EventEmitter.removeListener(String ev);

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Desasignar una función de la cola de procesamiento de objetos

1
Object EventEmitter.removeListener(Object map);

Parámetros de llamada:

  • map: Objeto, especifica la relación de mapeo de eventos, el nombre del atributo del objeto se usa como nombre del evento y el valor del atributo se usa como función de procesamiento de eventos.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

removeAllListeners

Cancela todos los oyentes de todos los eventos de la cola de procesamiento del objeto. Si se especifica un evento, elimina todos los oyentes del evento especificado.

1
Object EventEmitter.removeAllListeners(String ev);

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

Cancela todos los oyentes de todos los eventos de la cola de procesamiento del objeto. Si se especifica un evento, elimina todos los oyentes del evento especificado.

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

Parámetros de llamada:

  • evs: Matriz, especifique el nombre del evento

Resultados de devolución:

  • Object, devuelve el objeto de evento en sí para facilitar las llamadas en cadena

setMaxListeners

El límite predeterminado en la cantidad de oyentes, solo por compatibilidad

1
EventEmitter.setMaxListeners(Integer n);

Parámetros de llamada:

  • n: Entero, especifica el número de eventos

getMaxListeners

Obtiene el número límite predeterminado de oyentes, solo por compatibilidad

1
Integer EventEmitter.getMaxListeners();

Resultados de devolución:

  • Integer, devuelve la cantidad límite predeterminada

listeners

Consultar la matriz de escucha para el evento especificado del objeto.

1
Array EventEmitter.listeners(String ev);

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Array, devuelve la matriz de escucha para el evento especificado

listenerCount

Consultar el número de oyentes para el evento especificado del objeto.

1
Integer EventEmitter.listenerCount(String ev);

Parámetros de llamada:

  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Integer, devuelve el número de oyentes para el evento especificado

Consultar el número de oyentes para el evento especificado del objeto.

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

Parámetros de llamada:

  • o: Valor, especifica el objeto de la consulta.
  • ev: Cadena, especifica el nombre del evento.

Resultados de devolución:

  • Integer, devuelve el número de oyentes para el evento especificado

eventNames

Nombre del evento del oyente de consultas

1
Array EventEmitter.eventNames();

Resultados de devolución:

  • Array, devuelve una serie de nombres de eventos

emit

Activar activamente un evento

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

Parámetros de llamada:

  • ev: Cadena, nombre del evento
  • args: ..., los parámetros del evento se pasarán a la función de procesamiento de eventos

Resultados de devolución:

  • Boolean, devuelve el estado del activador del evento, devuelve verdadero si hay un evento de respuesta; de lo contrario, devuelve falso

toString

Devuelve la representación de cadena del objeto. Generalmente, se devuelve "[Objeto nativo]". El objeto se puede volver a implementar de acuerdo con sus propias características.

1
String EventEmitter.toString();

Resultados de devolución:

  • String, devuelve la representación de cadena del objeto

toJSON

Devuelve una representación en formato JSON del objeto, que generalmente devuelve una colección de propiedades legibles definidas por el objeto.

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

Parámetros de llamada:

  • key: Cadena, no utilizada

Resultados de devolución:

  • Value, devuelve un valor que contiene JSON serializable