Events-Modul
Was ist das Events-Modul?
Anwendungen die mit Node.js erstellt werden sind Ereignis-gesteuert. D. h. nachdem eine Node.js-Anwendung gestartet wurde, wartet die Anwendung darauf, dass definierte Ereignisse eintreten, um adäquat darauf zu reagieren, d. h. einen entsprechenden Event-Handler auszuführen. Alle Aktionen, die der Anwender mit einer Anwendung ausführt, sind Ereignisse, wie z. B. das Starten der Anwendung oder das Lesen von Daten. Das Events-Modul ist ein in Node.js integriertes Modul, mit dem Events (Ereignisse) und Event-Listener erstellt, verwaltet und gelöscht sowie Ereignisse ausgelöst werden können:
Das Events-Modul verwenden
Das EventEmitter-Objekt
Das Events-Modul kann mit „require(‚events‘)“ in eine Anwendung eingebunden werden. Um die Eigenschaften und Methoden des Events-Moduls verwenden zu können, muss zunächst ein EventEmitter-Objekt mit „var eventEmitter = new events.EventEmitter()“ erstellt werden. Mit „eventEmitter.on(‚event‘, eventListener)“ oder „eventEmitter.addListener(event, eventListener)“ kann einem Ereignis ein Event-Listener zugewiesen werden. Mit „eventEmitter.emit(‚event‘)“ kann ein Ereignis ausgelöst werden:
JavaScript-Datei:
Kommandozeile:
Webbrowser:
Event-Listener entfernen
Mit „eventEmitter.removeListener(‚event‘, eventListener)“ kann ein einzelner Event-Listener von einem Event entfernt werden. Mit „eventEmitter.removeAllListeners([‚event‘])“ können alle Event-Listener von einem Event oder alle Event-Listener in einer Anwendung entfernt werden:
JavaScript-Datei:
Kommandozeile:
Webbrowser:
Event-Listener verwalten
Mit „eventEmitter.listeners(‚event‘)“ können alle mit einem Event verknüpften Event-Listener ausgegeben werden. Der Rückgabewert ist ein Array von Event-Listenern. Mit „events.listenerCount(emitter, ‚event‘)“ kann die Anzahl der mit einem Event verknüpften Event-Listener ermittelt werden:
JavaScript-Datei:
Kommandozeile:
Webbrowser:
Einmaliger Event-Listener
Mit „eventEmitter.once(‚event‘, eventListener)“ kann einem Event ein Event-Listener für eine einmalige Ausführung zugeordnet werden. Nach der Ausführung des Event-Listeners wird dieser automatisch von dem Event wieder entfernt:
JavaScript-Datei:
Kommandozeile:
Webbrowser: