JSPM

  • Created
  • Published
  • Downloads 42669277
  • Score
    100M100P100Q277647F
  • License MIT

EventEmitter3 focuses on performance while maintaining a Node.js AND browser compatible interface.

Package Exports

  • eventemitter3

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eventemitter3) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

EventEmitter3

Version npmBuild StatusDependenciesCoverage StatusIRC channel

EventEmitter3 is a faster alternative to EventEmitter2 and the built-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 newListener event is emitted when an event is emitted.
  • No silly setMaxListeners, the function exists, but does nothing.
  • No silly listenerCount function.. Just do EventEmitter.listeners(event).length

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 Array.isArray stuff is used, it's just plain ol JavaScript that should even work IE5 if you want to.

Installation

$ npm install --save eventemitter3

or as a component

$ component install eventemitter3

then

var EventEmitter = require('eventemitter3');

// or

var EventEmitter = require('eventemitter3').EventEmitter;

For API methods see the official Node.js documentation:

http://nodejs.org/api/events.html