Node.js Eventi


Node.js è perfetto per le applicazioni basate su eventi.


Eventi in Node.js

Ogni azione su un computer è un evento. Come quando viene stabilita una connessione o viene aperto un file.

Gli oggetti in Node.js possono attivare eventi, come l'oggetto readStream attiva eventi quando si apre e si chiude un file:

Esempio

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

Modulo Eventi

Node.js ha un modulo integrato, chiamato "Eventi", in cui puoi creare, attivare e ascoltare i tuoi eventi.

Per includere il modulo Eventi integrato, utilizzare il require() metodo. Inoltre, tutte le proprietà e i metodi dell'evento sono un'istanza di un oggetto EventEmitter. Per poter accedere a queste proprietà e metodi, crea un oggetto EventEmitter:

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

L'oggetto EventEmitter

Puoi assegnare gestori di eventi ai tuoi eventi con l'oggetto EventEmitter.

Nell'esempio seguente abbiamo creato una funzione che verrà eseguita quando viene generato un evento "urlo".

Per attivare un evento, utilizzare il emit()metodo.

Esempio

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