Event emitter component.
$ component install component/emitter
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);
Register an event
handler fn
.
Register a single-shot event
handler fn
,
removed immediately after it is invoked the
first time.
event
and fn
to remove a listener.event
to remove all listeners on that event.Emit an event
with variable option args.
Return an array of callbacks, or an empty array.
Check if this emitter has event
handlers.
MIT
# Emitter [![Build Status](https://travis-ci.org/component/emitter.png)](https://travis-ci.org/component/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: ```js var Emitter = require('emitter'); var emitter = new Emitter; emitter.emit('something'); ``` As a mixin: ```js var Emitter = require('emitter'); var user = { name: 'tobi' }; Emitter(user); user.emit('im a user'); ``` As a prototype mixin: ```js 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. ## License MIT
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 19553 | swellard | Move and rename clients | ||
//guest/perforce_software/helix-web-services/main/source/clients/2016.1.0/javascript/node_modules/component-emitter/Readme.md | |||||
#1 | 18810 | tjuricek |
First-pass at JavaScript client SDK. JavaScript requires Node with Gulp to "browserfy" the library. It's the easiest way I found to use the swagger-js project; bundle up a wrapping method. There is no JavaScript reference guide. The swagger-js doesn't really document what they do very well, actually. Overall I'm not particularly impressed by swagger-js, it was hard to even figure out what the right method syntax was. We may want to invest time in doing it better. This required setting CORS response headers, which are currently defaulted to a fairly insecure setting. |