Package Exports
- obs-store
- obs-store/lib/asStream
- obs-store/lib/composed
- obs-store/lib/localStorage
- obs-store/lib/transform
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (obs-store) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
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 can be turned into an ObservableStoreStream.
An ObservableStoreStream is a duplex stream that you can pipe new values into it or
pipe its updated values out of it.
Special behavior: Doesnt buffer outgoing updates, writes latest state to dest on pipe.
const pipe = require('pump')
const asStream = require('obs-store/lib/asStream')
const storeOne = new ObservableStore(initState)
const storeTwo = new ObservableStore()
pipe(
asStream(storeOne),
transformStream,
asStream(storeTwo)
)Changelog
3.0.0
ObservableStore are no longer streams. You can create streams via asStream.