Objet objet intégré

ObjetEventEmitter

EventEmitter est un objet déclencheur d'événements, qui peut être utilisé pour établir le modèle d'observateur. Les objets qui prennent en charge le déclenchement d'événements en héritent tous.

Lorsqu'un événement est déclenché, tous les écouteurs associés à l'événement sont appelés de manière asynchrone. Cela nous permet également de créer un code hautement personnalisable et flexible.

Les fonctions couramment utilisées incluent : addListener/on, once, RemoveListener/off, RemoveAllListeners et émettent.

Voici un exemple de code :

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')Lorsque l'exemple de code ci-dessus est exécuté, l'événement d'instance émetteur d'événement écoute d'abord l'événement 'read_file', puis déclenche l'opération de lecture du fichier lorsque l'événement est déclenché ( ). Lorsque la lecture est réussie, l'événement 'show_content' sera déclenché. À ce moment, la fonction qui a écouté l'événement 'show_content' sera exécutée et le contenu du fichier sera affiché. Si une erreur se produit lors de la lecture du fichier, l'événement « erreur » est déclenché et l'échec de l'opération est géré.

Ce modèle présente de grands avantages dans les scénarios commerciaux traitant d'opérations asynchrones.

relation d'héritage

%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

Constructeur

EventEmitter

Constructeur

1
new EventEmitter();

objet

objet déclencheur d'événement

1
EventEmitter new EventEmitter;

propriétés statiques

defaultMaxListeners

Entier, le nombre maximum global d'auditeurs par défaut

1
static Integer EventEmitter.defaultMaxListeners;

fonction membre

on

Lier un gestionnaire d'événements à l'objet

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Lier un gestionnaire d'événements à l'objet

1
Object EventEmitter.on(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet sera utilisé comme nom d'événement et la valeur de l'attribut sera utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

addListener

Lier un gestionnaire d'événements à l'objet

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Lier un gestionnaire d'événements à l'objet

1
Object EventEmitter.addListener(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet sera utilisé comme nom d'événement et la valeur de l'attribut sera utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

prependListener

Lier un gestionnaire d'événements à l'origine de l'objet

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Lier un gestionnaire d'événements à l'origine de l'objet

1
Object EventEmitter.prependListener(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet sera utilisé comme nom d'événement et la valeur de l'attribut sera utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

once

Liez un gestionnaire d'événement unique à l'objet.Le gestionnaire unique ne sera déclenché qu'une seule fois.

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Liez un gestionnaire d'événement unique à l'objet.Le gestionnaire unique ne sera déclenché qu'une seule fois.

1
Object EventEmitter.once(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet sera utilisé comme nom d'événement et la valeur de l'attribut sera utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

prependOnceListener

Lier un gestionnaire d'événements à l'origine de l'objet

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Lier un gestionnaire d'événements à l'origine de l'objet

1
Object EventEmitter.prependOnceListener(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet sera utilisé comme nom d'événement et la valeur de l'attribut sera utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

off

Désaffecter une fonction de la file d'attente de traitement des objets

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Annuler toutes les fonctions dans la file d'attente de traitement des objets

1
Object EventEmitter.off(String ev);

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Désaffecter une fonction de la file d'attente de traitement des objets

1
Object EventEmitter.off(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet est utilisé comme nom d'événement et la valeur de l'attribut est utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

removeListener

Désaffecter une fonction de la file d'attente de traitement des objets

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

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement
  • func: Fonction, spécifiez la fonction de traitement des événements

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Annuler toutes les fonctions dans la file d'attente de traitement des objets

1
Object EventEmitter.removeListener(String ev);

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Désaffecter une fonction de la file d'attente de traitement des objets

1
Object EventEmitter.removeListener(Object map);

Paramètres d'appel :

  • map: Objet, spécifie la relation de mappage d'événement, le nom de l'attribut de l'objet est utilisé comme nom d'événement et la valeur de l'attribut est utilisée comme fonction de traitement d'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

removeAllListeners

Annule tous les écouteurs de tous les événements de la file d'attente de traitement de l'objet. Si un événement est spécifié, supprime tous les écouteurs de l'événement spécifié.

1
Object EventEmitter.removeAllListeners(String ev);

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

Annule tous les écouteurs de tous les événements de la file d'attente de traitement de l'objet. Si un événement est spécifié, supprime tous les écouteurs de l'événement spécifié.

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

Paramètres d'appel :

  • evs: Tableau, précisez le nom de l'événement

Résultats de retour :

  • Object, renvoie l'objet événement lui-même pour faciliter les appels en chaîne

setMaxListeners

La limite par défaut du nombre d'auditeurs, pour des raisons de compatibilité uniquement

1
EventEmitter.setMaxListeners(Integer n);

Paramètres d'appel :

  • n: Entier, précisez le nombre d'événements

getMaxListeners

Obtient le nombre limite par défaut d'écouteurs, pour des raisons de compatibilité uniquement

1
Integer EventEmitter.getMaxListeners();

Résultats de retour :

  • Integer, renvoie la quantité limite par défaut

listeners

Interrogez le tableau d'écoute pour l'événement spécifié de l'objet

1
Array EventEmitter.listeners(String ev);

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Array, renvoie le tableau d'écoute pour l'événement spécifié

listenerCount

Interroger le nombre d'écouteurs pour l'événement spécifié de l'objet

1
Integer EventEmitter.listenerCount(String ev);

Paramètres d'appel :

  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Integer, renvoie le nombre d'écouteurs pour l'événement spécifié

Interroger le nombre d'écouteurs pour l'événement spécifié de l'objet

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

Paramètres d'appel :

  • o: Valeur, précise l'objet de la requête
  • ev: String, spécifie le nom de l'événement

Résultats de retour :

  • Integer, renvoie le nombre d'écouteurs pour l'événement spécifié

eventNames

Nom de l'événement d'écoute de requête

1
Array EventEmitter.eventNames();

Résultats de retour :

  • Array, renvoie un tableau de noms d'événements

emit

Déclencher activement un événement

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

Paramètres d'appel :

  • ev: Chaîne, nom de l'événement
  • args: ..., les paramètres de l'événement seront transmis à la fonction de traitement des événements

Résultats de retour :

  • Boolean, renvoie l'état du déclencheur d'événement, renvoie vrai s'il y a un événement de réponse, sinon renvoie faux

toString

Renvoie la représentation sous forme de chaîne de l'objet. Généralement, "[Native Object]" est renvoyé. L'objet peut être réimplémenté en fonction de ses propres caractéristiques.

1
String EventEmitter.toString();

Résultats de retour :

  • String, renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie une représentation au format JSON de l'objet, renvoyant généralement une collection de propriétés lisibles définies par l'objet.

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

Paramètres d'appel :

  • key: Chaîne, non utilisée

Résultats de retour :

  • Value, renvoie une valeur contenant du JSON sérialisable