- ability to wire listeners via constructor config like so:
var e = new process.EventEmitter({
on: {
someEvent: function() { doSomething(); }
}
});
- ability to specify a listener to only execute once:
e.addListener("someEvent", listener, true);
//or:
e.once("someEvent", listener);
//or:
var e = new process.EventEmitter({
once: {
someEvent: listener
}
});
- convenience aliases .on and .fire for methods .addListener and .emit respecitively
I have an entire framework I'm porting that uses a .on/.fire API for events and if it's all the same to you I think adding these won't pose any issues whatsoever; just makes my life MUCH easier...
- ability to suppress/unsuppress events (indefinitely or just one time)
e.suppress("test");
e.emit("test"); // no listeners for 'test' will execute
e.emit("test"); // ditto
e.unsuppress("test");
e.emit("test"); // listeners for 'test' event fire normally again
e.suppressOnce("test");
e.emit("test"); // no listeners for 'test' will execute
e.emit("test"); // listeners for 'test' event fire normally again