EventEmitter3 focuses on performance while maintaining a Node.js AND browser compatible interface. This the source of the same EventEmitter that is used in Primus.
Want to see pretty graphs? Log in now!
npm install eventemitter3
|910||downloads in the last day|
|5 065||downloads in the last week|
|17 962||downloads in the last month|
|Last Published By|
|Version||0.1.2 last updated 8 days ago|
|Keywords||EventEmitter, EventEmitter2, EventEmitter3, Events, reactor, pub/sub, publish, subscribe, event, emitter, addListener, addEventListener|
|Dependents (18)||bigpipe, dynamis, fortress, http-proxy, http-proxy-caronte, j-http-proxy, json-rpc2, mana, pipe.js, primus, primus-multiplex, primus-rooms-adapter, primus.io, proxy-caronte, safelink, shrinkwrap, stratum, tcp-proxy|
EventEmitter3 is a faster alternative to EventEmitter2 and the build-in EventEmitter that ships within Node.js. It removes some features that you might not need:
- Domain support.
- Thrown errors when there are no error listeners specified.
- That a
newListenerevent is emitted when an event is emitted.
- No silly
- No silly
listenerCountfunction.. Just do
And adds some features you want:
- Emit events with a custom context without binding:
EE.on(event, fn, context)which also works with once
EE.once(event, fn, context)
It's a drop in replacement of your existing EventEmitters, but just faster. Free performance, who wouldn't want that.
The source of the EventEmitter is compatible for browser usage, no fancy pancy
work IE5 if you want to. This module currently serves it's use in
Primus's client file.
$ npm install --save eventemitter3
or as a component
$ component install eventemitter3
var EventEmitter = require('eventemitter3'); // or var EventEmitter = require('eventemitter3').EventEmitter;
For API methods see the official Node.js documentation: