Wydarzenia Node.js


Node.js jest idealny do aplikacji sterowanych zdarzeniami.


Wydarzenia w Node.js

Każda akcja na komputerze jest wydarzeniem. Podobnie jak w przypadku nawiązania połączenia lub otwarcia pliku.

Obiekty w Node.js mogą uruchamiać zdarzenia, tak jak obiekt readStream uruchamia zdarzenia podczas otwierania i zamykania pliku:

Przykład

var fs = require('fs');
var rs = fs.createReadStream('./demofile.txt');
rs.on('open', function () {
  console.log('The file is open');
});

Moduł wydarzeń

Node.js ma wbudowany moduł o nazwie „Zdarzenia”, w którym możesz tworzyć, odpalać i nasłuchiwać własnych zdarzeń.

Aby dołączyć wbudowany moduł Events użyj require() metody. Ponadto wszystkie właściwości i metody zdarzeń są instancjami obiektu EventEmitter. Aby mieć dostęp do tych właściwości i metod, utwórz obiekt EventEmitter:

var events = require('events');
var eventEmitter = new events.EventEmitter();

Obiekt emitera zdarzeń

Programy obsługi zdarzeń można przypisać do własnych zdarzeń za pomocą obiektu EventEmitter.

W poniższym przykładzie stworzyliśmy funkcję, która będzie wykonywana po uruchomieniu zdarzenia „scream”.

Aby odpalić zdarzenie, użyj emit()metody.

Przykład

var events = require('events');
var eventEmitter = new events.EventEmitter();

//Create an event handler:
var myEventHandler = function () {
  console.log('I hear a scream!');
}

//Assign the event handler to an event:
eventEmitter.on('scream', myEventHandler);

//Fire the 'scream' event:
eventEmitter.emit('scream');