Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

emitter-component

sindresorhus3.9mdeprecated2.0.0

Renamed to component-emitter: https://www.npmjs.com/package/component-emitter

Event emitter

readme

Emitter

Event emitter component.

Installation

$ component install component/emitter

API

Emitter(obj)

The Emitter may also be used as a mixin. For example a "plain" object may become an emitter, or you may extend an existing prototype.

As an Emitter instance:

var Emitter = require('emitter');
var emitter = new Emitter;
emitter.emit('something');

As a mixin:

var Emitter = require('emitter');
var user = { name: 'tobi' };
Emitter(user);

user.emit('im a user');

As a prototype mixin:

var Emitter = require('emitter');
Emitter(User.prototype);

Emitter#on(event, fn)

Register an event handler fn.

Emitter#once(event, fn)

Register a single-shot event handler fn, removed immediately after it is invoked the first time.

Emitter#off(event, fn)

  • Pass event and fn to remove a listener.
  • Pass event to remove all listeners on that event.
  • Pass nothing to remove all listeners on all events.

Emitter#emit(event, ...)

Emit an event with variable option args.

Emitter#listeners(event)

Return an array of callbacks, or an empty array.

Emitter#hasListeners(event)

Check if this emitter has event handlers.

changelog

1.1.0 / 2013-10-20

  • add .addEventListener() and .removeEventListener() aliases

1.0.1 / 2013-06-27

  • add support for legacy ie

1.0.0 / 2013-02-26

  • add .off() support for removing all listeners

0.0.6 / 2012-10-08

  • add this._callbacks initialization to prevent funky gotcha

0.0.5 / 2012-09-07

  • fix Emitter.call(this) usage

0.0.3 / 2012-07-11

  • add .listeners()
  • rename .has() to .hasListeners()

0.0.2 / 2012-06-28

  • fix .off() with .once()-registered callbacks