nano-event-emitter
v1.0.1
Published
Minimal extendable jQuery-style EventEmitter
Downloads
10
Readme
nano-event-emitter
Minimal extendable jQuery-style EventEmitter
Installation and Usage
Module bundlers
Install with npm and bundle with rollup
, browserify
, webpack
or any other CommonJS compatible module bundler.
Install
npm install --save nano-event-emitter
Use
// usage.js
import NanoEventEmitter from 'nano-event-emitter';
const eventEmitter = NanoEventEmitter.create();
Bundle
browserify usage.js > bundle.js
rollup usage.js > bundle.js
CDN
Embed into your HTML document directly via script
.
<!doctype html>
<html>
<head>
</head>
<body>
<script src="https://wzrd.in/standalone/nano-event-emitter@latest"></script>
</bod>
</html>
Available from CDN:
API
NanoEventEmitter
An EventEmitter
Examples
import NanoEventEmitter from 'nano-event-emitter';
const eventEmitter = new NanoEventEmitter();
on
Attach an observer for one or more eventNames.
Parameters
eventNames
!(string | Array<string>) array or string of space seperated event namesobserver
ObserverCallback observer to invoke for eventNames
Examples
import NanoEventEmitter from 'nano-event-emitter';
const eventEmitter = NanoEventEmitter.create();
eventEmitter.on('event', () => { console.log('event'); });
eventEmitter.on('more-event', () => { console.log('more-event'); });
eventEmitter.on(['even', 'more', 'events'], () => { console.log('even more events'); });
eventEmitter.emit(['event', 'more-event']);
// console: event
// console: more-event
eventEmitter.emit('even more events');
// console: even more events
// console: even more events
// console: even more events
Returns this
off
Detach an observer for one or more eventNames.
Parameters
eventNames
!(string | Array<string>) array or string of space seperated event namesobserver
[?ObserverCallback] reference to observer function to detach. All observer functions for all eventNames are detached if omitted
Examples
import NanoEventEmitter from 'nano-event-emitter';
const eventEmitter = NanoEventEmitter.create();
const yetAnotherObserver = () => console.log('yet-another-observer');
eventEmitter.on('yet-another-event', () => { console.log('yet-another-event'); });
eventEmitter.on('yet-another-event', () => { console.log('yet-another-event'); });
eventEmitter.on('yet-another-event', yetAnotherObserver);
eventEmitter.emit(['yet-another-event']);
// console: yet-another-event
// console: yet-another-event
// console: yet-another-observer
eventEmitter.off('yet-another-event', yetAnotherObserver);
eventEmitter.emit('yet-another-event');
// console: yet-another-event
// console: yet-another-event
eventEmitter.off('yet-another-event');
eventEmitter.emit('yet-another-event');
Returns this
emit
Emit one or more events, invoking registered observers with optional args
Parameters
Returns this
create
Create a NanoEventEmitter instance.
Parameters
args
...
Examples
import NanoEventEmitter from 'nano-event-emitter';
const eventEmitter = NanoEventEmitter.create();
Returns **** NanoEventEmitter