@reatom/observable
Package of Reatom for creating observers of atoms or stores
Install
npm i @reatom/observable
or
yarn add @reatom/observable
NOTE. @reatom/observable depends on and works with @reatom/core.
Usage
import { declareAtom, declareAction, createStore } from '@reatom/core'
const action = declareAction()
const atom = declareAtom(0, on => [
on(action, (state, payload) => payload)
])
const store = createStore(atom)
Store observer
import { observe } from '@reatom/observable'
const observableStore = observe(store)
const subscription = observableStore.subscribe(action => console.log(action))
subscription.unsubscribe() // unsubscribes
Alternative subscsribe
const subscription = observableStore.subscribe({
next(action) {
console.log(action)
}
})
Atom observer
import { observe } from '@reatom/observable'
const observableAtom = observe(store, atom)
const subscription = observableAtom.subscribe(state => console.log(state))
subscription.unsubscribe() // unsubscribes
Alternative subscsribe
const subscription = observableAtom.subscribe({
next(state) {
console.log(state)
}
})