A Cycle.js Driver for using localStorage and sessionStorage in the browser.
npm install --save @cycle/storage
You can read the API docs here.
Basics:
import Cycle from '@cycle/core';
import storageDriver from '@cycle/storage';
function main(responses) {
// ...
}
const drivers = {
storage: storageDriver
}
Cycle.run(main, drivers);
Simple and normal use case (JSBin demo):
function main({DOM, storage}) {
const storageRequest$ = DOM.select('input')
.events('keypress')
.map(function(ev) {
return {
key: 'inputText',
value: ev.target.value
};
});
return {
DOM: storage.local
.getItem('inputText')
.startWith('')
.map((text) =>
h('input', {
type: 'text',
value: text
})
),
storage: storageRequest$
};
}