1.1.2 • Published 7 years ago

cerebral-async-storage v1.1.2

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

cerebral async storage

Install

NPM

npm install cerebral-async-storage

Description

This module exposes react-native async storage as a provider, where it by default parses and serializes to JSON.

The main feature - you can synchronize your app state with async storage and auto restore state on app starting.

Instantiate

import {Controller} from 'cerebral'
import StorageProvider from 'cerebral-async-storage'

const controller = Controller({
  providers: [StorageProvider({
    // Set prefix for your application, its optional
    prefix: 'somePrefix'
  })]
})

Auto sync

For sync your state you need run signal:

import {restoreState} from 'cerebral-async-storage/operators';

controller.runSignal('$NAME$', [restoreState]);

Base actions

get

Get data from storage.

action

function someAction({asyncStorage}) {
  const data = asyncStorage.get('someKey')
}

operator

import {state, props} from 'cerebral/tags'
import {getStorage} from 'cerebral-async-storage/operators'

export default [
  getStorage('someKey'),
  function someAction ({props}) {
    props.value // Whatever was on "someKey"
  }
]

remove

Remove data from storage.

action

function someAction({asyncStorage}) {
  asyncStorage.remove('someKey')
}

operator

import {state} from 'cerebral/tags'
import {removeStorage} from 'cerebral-async-storage/operators'

export default [
  removeStorage(state`currentStorageKey`)
]

set

Write data to storage.

action

function someAction({asyncStorage}) {
  asyncStorage.set('someKey', {foo: 'bar'})
}

operator

import {state, props} from 'cerebral/tags'
import {setStorage} from 'cerebral-async-storage/operators'

export default [
  setStorage(state`currentStorageKey`, props`someData`)
]
1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.5

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago