Objecte objecte incorporat

ObjectEventEmitter

EventEmitter és un objecte activador d'esdeveniments, que es pot utilitzar per establir el patró d'observador. Els objectes que admeten l'activació d'esdeveniments hereten d'aquest

Quan s'activa un esdeveniment, tots els oients associats a l'esdeveniment es criden de manera asíncrona. També ens permet crear codi altament personalitzable i flexible.

Les funcions que s'utilitzen habitualment inclouen: addListener/on, once, removeListener/off, removeAllListeners i emit.

Aquí teniu un codi 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')Quan s'executa el codi d'exemple anterior, l'esdeveniment d'instància de l'emissor d'esdeveniments escolta primer l'esdeveniment "read_file" i després activa l'operació de lectura del fitxer quan s'activa l'esdeveniment ( ). Quan la lectura sigui correcta, s'activarà l'esdeveniment 'show_content'. En aquest moment, s'executarà la funció que va escoltar l'esdeveniment 'show_content' i es mostrarà el contingut del fitxer. Si es produeix un error en llegir el fitxer, s'activa l'esdeveniment "error" i es gestiona l'error de l'operació.

Aquest model té grans avantatges en escenaris empresarials que tracten operacions asíncrones.

relació hereditària

%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();

objecte

objecte activador d'esdeveniments

1
EventEmitter new EventEmitter;

propietats estàtiques

defaultMaxListeners

Enter, el nombre màxim global predeterminat d'oients

1
static Integer EventEmitter.defaultMaxListeners;

funció de membre

on

Enllaceu un controlador d'esdeveniments a l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object EventEmitter.on(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

addListener

Enllaceu un controlador d'esdeveniments a l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object EventEmitter.addListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object EventEmitter.prependListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

once

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

1
Object EventEmitter.once(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependOnceListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object EventEmitter.prependOnceListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

off

Desassignar una funció de la cua de processament d'objectes

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object EventEmitter.off(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object EventEmitter.off(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeListener

Desassignar una funció de la cua de processament d'objectes

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object EventEmitter.removeListener(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object EventEmitter.removeListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeAllListeners

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

1
Object EventEmitter.removeAllListeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

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

Paràmetres de trucada:

  • evs: Matriu, especifiqueu el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

setMaxListeners

El límit predeterminat del nombre d'oients, només per compatibilitat

1
EventEmitter.setMaxListeners(Integer n);

Paràmetres de trucada:

  • n: Enter, especifiqueu el nombre d'esdeveniments

getMaxListeners

Obté el nombre límit predeterminat d'oients, només per compatibilitat

1
Integer EventEmitter.getMaxListeners();

Resultats de retorn:

  • Integer, retorna la quantitat límit predeterminada

listeners

Consulteu la matriu d'escolta per a l'esdeveniment especificat de l'objecte

1
Array EventEmitter.listeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Array, retorna la matriu d'escolta per a l'esdeveniment especificat

listenerCount

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

1
Integer EventEmitter.listenerCount(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

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

Paràmetres de trucada:

  • o: Valor, especifica l'objecte de la consulta
  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

eventNames

Consulta el nom de l'esdeveniment de l'oient

1
Array EventEmitter.eventNames();

Resultats de retorn:

  • Array, retorna una matriu de noms d'esdeveniments

emit

Activa activament un esdeveniment

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

Paràmetres de trucada:

  • ev: cadena, nom de l'esdeveniment
  • args: ..., els paràmetres d'esdeveniment es passaran a la funció de processament d'esdeveniments

Resultats de retorn:

  • Boolean, retorna l'estat de l'activador de l'esdeveniment, retorna true si hi ha un esdeveniment de resposta, en cas contrari retorna false

toString

Retorna la representació de cadena de l'objecte. En general, es retorna "[Objecte natiu]". L'objecte es pot tornar a implementar segons les seves pròpies característiques.

1
String EventEmitter.toString();

Resultats de retorn:

  • String, retorna la representació de cadena de l'objecte

toJSON

Retorna una representació en format JSON de l'objecte, generalment retornant una col·lecció de propietats llegibles definides per l'objecte.

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

Paràmetres de trucada:

  • key: Corda, no utilitzada

Resultats de retorn:

  • Value, retorna un valor que conté JSON serializable