Psmitter
An usefull event emitter for the Browser
🏃 Migration
Check migration file to 1.0.0.
☁️ Install
npm install psmitter --save
🍴 Usage
You can use this module of many ways:
- By minFile:
<!-- index.html -->
// file.jslet myEmitter =
- By require
// file.jsconst Psmitter = Psmitter let myEmitter =
- By webpack
Only add just with the others vendors files
// webpack.config.jsvar vendors = ... 'psmitter'
// file.jslet myEmitter =
📝 Documentation
on(event | [eventA, eventB], fn)
Register a listener for one or more events
Params
- event | [eventA, eventB] -
string|Array
: Event name or array of events names - fn -
function
: Callback function
emit(event, data)
Dispatch a event
Params
- event -
string
: Event name for dispatch - data -
mixed
: Data for send when the event is emitted.
once(event | [eventA, eventB], fn)
Register a listener that will be executed only once
Params
- event | [eventA, eventB] -
string|Array
: Event name or array of events names - fn -
function
: Callback function
getEvents()
Get a list of event names in the current Psmitter instance
Return
- array : The list of events names
getListeners(event)
Get a listeners list binded to determinate event
Params
- event -
string
: Event name
Return
- array : The list of listeners
countListeners(event)
Number of listeners registered to an event
Params
- event -
string
: Event name
Return
- number : Number of listeners registered
removeListener(event, fn)
Remove an listener of a determinate event
Params
- event -
string
: Event name - fn -
function
: Callback function to remove
removeAllListeners(event)
Remove all listeners of a event
Params
- event -
string
: Event name
removeLastListener(event)
Remove the last listener of an event
Params
- event -
string
: Event name
hasSomeListener(event)
Check if exists almost one listener registered to a event
Params
- event -
string
: Event name
Return
- boolean : Return
true
if contains some listener, otherwise returnfalse
📋 Examples
If you need to emit and listen some data
// button[id="message"]var button = documentbutton myEmitter
If you needs to remove and newly register an listener
index.html
file.js
var time = documentvar { timeinnerHTML = data} myEmitter var removeButton = documentremoveButton var registerButton = documentregisterButton
🚀 How to contribute 😃
You have a improvement? or found a bug? See how to contribute
🎉 Where is this library used?
If you are using this library in one of your projects, add it in this list.
proyect name with link
(Author) ---> description
📜 License
[MIT][license] © [Fernando Palacios]