reeal v0.1.2
Reeal
Simple event emitter for node.js and the browser.
How to include
Node.js / Browserify
In your shell:
$ npm install --save reealIn your javascript:
var Reeal = require('reeal')Browser ("classic" way)
Just add a script tag with either reeal.js or reeal.min.js from this repos root directory.
This makes the Reeal variable globally available.
typeof window.Reeal
// --> 'function'API
Reeal#constructor([<context>])
Creates a new instance. If context is specified, all listeners will be invoked with it.
var events = new Reeal(this)Reeal#trigger(<name>[, <args>])
Triggers all listeners to event name.
If specified, the array args is applied to each listener.
events.trigger('your average event')
events.trigger('party time', ['Angela', 'Bob', 'Charlie'])Reeal#on(<name>, <callback>)
Adds a listener callback to the event name.
events.on('party time', function (people) {
console.log('Parteey!')
console.log('With ' + people.join(' and ') + '!')
})Reeal#off(<name>, <callback>[, <all>])
Removes callback from the listener list for name.
NOTE: If callback is bound to the event twice or more often, it will be removed only once, except all is truthy.
events.off('partytime', listener)
events.off('partytime', listener, true)Reeal#triggerAll([<args>])
Simply triggers all callbacks in every listener list no matter what event name.
If specified, the array args is applied to each listener.
events.triggerAll()
events.triggerAll(['Angela', 'Bob', 'Charlie'])To do
- Enhance browser compatabilty (use less ES5)
Testing/Building
Installing development dependencies
$ npm installRunning tests
$ npm testBuilding for the browser
$ npm run build
$ # for building on file change
$ npm run watchLicense
MIT license, see LICENSE.