Descrição do método:
Registre um ouvinte para o evento especificado.
gramática:
A cópia do código é a seguinte:
emissor.on (evento, ouvinte)
emissor.addlistener (evento, ouvinte)
Receber parâmetros:
Tipo de evento de evento (string)
ouvinte (função) a função de retorno de chamada quando o evento é acionado
exemplo:
A cópia do código é a seguinte:
Server.on ('conexão', função (stream) {
console.log ('alguém conectado!');
});
Código -fonte:
A cópia do código é a seguinte:
EventEmitter.prototype.addlistener = function (tipo, ouvinte) {
var m;
if (! Util.isfunction (ouvinte))
the typeError ('ouvinte deve ser uma função');
if (! this._events)
this._events = {};
// Para evitar a recursão no caso que tipo === "newListener"! Antes
// Adicionando -o aos ouvintes, primeiro emite "newListener".
if (this._events.newlistener)
this.emit ('newListener', tipo,
util.isfunction (ouvinte.listener)?
ouvinte.listener: ouvinte);
if (! this._events [type])
// otimiza o caso de um ouvinte. Não precisa do objeto de matriz extra.
this._events [type] = ouvinte;
caso contrário, if (util.isObject (this._events [type])))
// Se já tivermos uma matriz, basta anexar.
this._events [tipo] .push (ouvinte);
outro
// Adicionando o segundo elemento, precisa alterar para a matriz.
this._events [type] = [this._events [type], ouvinte];
// Verifique o vazamento do ouvinte
if (util.isObject (this._events [type]) &&! this._events [type] .warned) {
var m;
if (! util.isundefined (this._maxListeners)) {
m = this._maxListeners;
} outro {
M = EventEmitter.DefaultMaxListeners;
}
if (m && m> 0 && this._events [type] .length> m) {
this._events [type] .warned = true;
Console.error ('(nó) Aviso: possível memória de EventEmitter' +
'vazamento detectado. %D ouvintes adicionados. ' +
'Use emissor.setMaxListeners () para aumentar o limite.',
this._events [tipo] .Length);
console.Trace ();
}
}
devolver isso;
};