Skip to content

Latest commit

 

History

History
35 lines (26 loc) · 769 Bytes

README.md

File metadata and controls

35 lines (26 loc) · 769 Bytes

ObservableStore

ObservableStore is a synchronous in-memory store for a single value, that you can subscribe to updates on.

const store = new ObservableStore(initState)
store.subscribe(function showValue(value) {
  console.log('saw value:', value)
})

store.putState(5) // "saw value: 5"
store.putState(true) // "saw value: true"
store.putState({ hello: 'world' }) // "saw value: { hello: 'world' }"

console.log(store.getState().hello) // "world"

streams

Each ObservableStore is a duplex stream. You can pipe new values into it and pipe its updated values out of it.

const pipe = require('pump')

const storeOne = new ObservableStore(initState)
const storeTwo = new ObservableStore()

pipe(
  storeOne,
  transformStream,
  storeTwo
)