energy
v0.8.0
Published
Simple cross-platform event emitter
Downloads
81
Maintainers
Readme
energy
simple cross-platform event emitter based on EventEmitter
API
Create an emitter instance
var energy = require('energy')
var emitter = energy()
Or use new
if you prefer. Either way works :)
var energy = require('energy')
var emitter = new energy()
Methods
- emitter.on(event, listener)
- emitter.off(event?, listener?, quota?)
- emitter.emit(event, ...args)
- emitter.once(event, listener)
- emitter.clone()
- emitter.listeners(event)
- emitter.init()
- emitter.to(target)
- energy.to(target)
- energy.applies(fns, scope, args, breaker?)
Parameters
- emitter refers to an
energy()
object - event refers to an event name
- listener refers to a function that listens to an event
emitter.on(event, listener)
- Add listener for event
- @return emitter
emitter.off(event?, listener?, quota?)
- Remove listener(s)
.off()
removes all listeners for all events.off(event)
removes all event listeners.off(event, listener)
removes all occurrences of event listener.off(event, listener, quota)
remove quota occurrences of event listener
- @return emitter
emitter.emit(event, ...args)
- Fire event listeners (in sequence) with the supplied arguments
- Listeners run in the context of emitter
- @return integer (number of listeners that fired)
emitter.once(event, listener)
- Add a one-time event listener
- @return emitter
emitter.clone()
- Clone an emitter at its current state
- @return a new emitter
emitter.listeners(event)
- Access the listeners array for the specified event
- @return array (reference)
emitter.init()
- Reinitialize an emitter
- @return emitter
emitter.to(target)
- Make target emitter-like based on
emitter
as the source. - @return emitter
energy.to(target)
- Make target emitter-like based on a
energy()
object as the source - @return target with emitter methods and properties
energy.applies(fns, scope, args, breaker?)
- Apply each function with scope and args
- If breaker is defined, then functions can return breaker to abort subsequent applies
- @return integer (number of functions that fired)
Compatibility
Works in node and in any browser. Tested in node, Chrome, FF, Opera, IE8