Skip to content

azer/pubsub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pubsub Build Status

Library for creating individual events with a minimalistic API.

Install

$ npm install pubsub

Usage

onReady = pubsub()

onReady(function(a, b, c){ // shortcut to: onReady.subscribe
    console.log(a, b, c)
    // => 3, 4, 1
})

onReady.publish(3, 4, 1)

You can optionally, you can pass pubsub() an object to mix the interfaces:

foo = pubsub({ value: 12345 })

foo.subscribe(function () {

  foo.value
  // => 3.14
  // => 158
})

foo.value = 314
foo.publish()

foo.value = 158
foo.publish()

API

subscribe(fn)

foo.subscribe(function(update){

    update
    // => 3.14
    // => 156
    // => { last: true }

})

foo.publish(3.14)
foo.publish(156)
foo.publish({ last: true })

subscribe.once(fn)

foo.subscribe.once(function(update){

    update
    // => 3.14

})

foo.publish(3.14)
foo.publish(156)

unsubscribe(fn)

unsubscribe.once(fn)

About

Minimalistic Pubsub Implementation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published