0.0.3 • Published 4 years ago
@townland/eventer v0.0.3
@townland/eventer
Townland custom event emitter named eventer and you can run this package in browsers.
Table of Contents
Stackable emit events
Emit an event with no event listener. After making the listener, the last emit will be called.
Installation
If you have worked with NPM/NodeJS so far, you know how to install this package. Of course, you can also run this package in browsers.
With package manager
I know npm and yarn to manage nodejs packages.
npm
npm i @townland/eventeryarn
yarn add @townland/eventerCDN
Do you know jsDeliver ?
<script src="https://cdn.jsdelivr.net/npm/@townland/eventer@latest/dist/index.min.js"></script>Functions
has
Check event name exist or not.
eventer.has('<EVENT-NAME>') isStacked
Check event name stacked and wait for listener.
eventer.isStacked('<EVENT-NAME>')on
Listen to an event.
function callback() {
/// your event callback
}
eventer.on('<EVENT-NAME>', callback)once
Listen to an event one time.
function callback() {
/// your event callback
}
eventer.once('<EVENT-NAME>', callback)remove
Yes! You can remove created listenner.
let event = eventer.on('<EVENT-NAME>', callback);
event.remove()Example
import { Eventer } from '@townland/eventer';
let eventer = new Eventer();
eventer.once('pong', (params: any[]) => {
/*
* This callback will call one time
*/
console.log('ping')
})
eventer.on('ping', (params: any[]) => {
/*
* This is event callback
*/
console.log('pong')
eventer.emit('pong')
});
eventer.emit('ping') // <= call event callbackChange log
You can read changes right here.