Skip to content

egoist/eventstop

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

eventstop

NPM version NPM downloads Build Status donate

Features

  • Modern
  • For Node.js and browsers
  • Support wildcard listener: on('*', (type, ...payload) => {})
  • Support all major browsers including IE8
  • 300 bytes minified and gzipped

Install

yarn add eventstop

You can also use the UMD version via https://unpkg.com/eventstop

Usage

const eventstop = require('eventstop')

const {on, emit} = eventstop()

// subscribe an event
const off = on('ready', msg => {
  console.log('message:', msg)
})

emit('ready', 'hola')
//=> hola

// unsubscribe
off()

API

const event = eventstop()
// or
const {on, off, emit, once} = eventstop()

.on(event, handler)

Return a function which would execute off(event, handler) when you call it.

You can use * as event type to listen all types:

on('*', (type, foo, bar) => {
  console.log(type, foo, 'and', bar)
  //=> hello you and me
})
emit('hello', 'you', 'me')

In wildcard listener, the first argument of handler function is its type.

.once(event, handler)

Like .on but only trigger handler once.

event

Type: string

handler

Type: function

.emit(event, ...args)

event

Type: string

.off(event, handler)

Same args to .on

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

eventstop © egoist, Released under the MIT License.
Authored and maintained by egoist with help from contributors (list).

egoistian.com · GitHub @egoist · Twitter @_egoistlily

About

A minimal event library for Node.js and browser.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published