Události Node.js


Node.js je ideální pro aplikace řízené událostmi.


Události v Node.js

Každá akce na počítači je událost. Jako když se vytvoří připojení nebo se otevře soubor.

Objekty v Node.js mohou spouštět události, jako například objekt readStream spouští události při otevírání a zavírání souboru:

Příklad

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

Modul událostí

Node.js má vestavěný modul nazvaný „Události“, kde můžete vytvářet, spouštět a poslouchat své vlastní události.

Chcete-li zahrnout vestavěný modul Události, použijte require() metodu. Kromě toho jsou všechny vlastnosti a metody události instancí objektu EventEmitter. Abyste měli přístup k těmto vlastnostem a metodám, vytvořte objekt EventEmitter:

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

Objekt EventEmitter

Pomocí objektu EventEmitter můžete ke svým vlastním událostem přiřadit obslužné rutiny událostí.

V níže uvedeném příkladu jsme vytvořili funkci, která se provede, když se spustí událost "scream".

Chcete-li spustit událost, použijte emit()metodu.

Příklad

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');