@socket.io/component-emitter
Event emitter
Last updated 5 years ago by darrachequesne .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @socket.io/component-emitter 
SYNC missed versions from official npm registry.

@socket.io/component-emitter

Event emitter component.

This project is a fork of the component-emitter project, with Socket.IO-specific TypeScript typings.

Installation

$ npm i @socket.io/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:

import { Emitter } from '@socket.io/component-emitter';

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

As a mixin:

import { Emitter } from '@socket.io/component-emitter';

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

user.emit('im a user');

As a prototype mixin:

import { Emitter } from '@socket.io/component-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.

License

MIT

Current Tags

  • 3.1.2                                ...           latest (2 years ago)

6 Versions

  • 3.1.2                                ...           2 years ago
  • 3.1.1                                ...           2 years ago
  • 4.0.0                                ...           3 years ago
  • 3.1.0                                ...           4 years ago
  • 3.0.0                                ...           4 years ago
  • 2.0.0                                ...           5 years ago
Maintainers (1)
Downloads
Today 0
This Week 1
This Month 4
Last Day 0
Last Week 3
Last Month 0
Dependencies (0)
None
Dev Dependencies (2)

Copyright 2013 - present © cnpmjs.org | Home |