/react-native-modest-storage

💾 A modest wrapper around the AsyncStorage API

Primary LanguageJavaScriptMIT LicenseMIT

💾 react-native-modest-storage 💾

package version package downloads standard-readme compliant package license make a pull request

A modest wrapper around the AsyncStorage API

Table of Contents

About

This module is just a modest wrapper around React Native's AsyncStorage API. It's purpose is to provide a cleaner API for persisting data.

Install

This project uses node and npm.

$ npm install react-native-modest-storage
$ # OR
$ yarn add react-native-modest-storage

Usage

import storage from 'react-native-modest-storage'

async function doStuff() {
  await storage.set('aKey', { Hello: 'World'})
  await storage.set('otherKey', 5)
  await storage.get('aKey').then(console.log) // {Hello: "World"}
  await storage.keys().then(console.log) // ['otherKey', 'aKey']
  await storage.update('aKey', {Hello: 'is it me your looking for.'})
  await storage.get('aKey').then(console.log) // {Hello: "is it me your looking for."}
  await storage.remove('otherKey')
  await storage.get('otherKey').then(console.log) // null
  await storage.set([['key1', {foo: 'bar'}], ['key2', 'baz'], ['test', {obj: 9}]])
  await storage.get('key1').then(console.log) // {foo: "bar"}
  await storage.get('test').then(console.log)
  await storage.clear()
}

doStuff()

API

Table of Contents

get

Retreive value from AsyncStorage based on key. Wrapper around getItem & multiGet.

Parameters

  • key
  • def Any Default value

Examples

storage.get('foo').then(console.log).catch(console.error)

Returns Promise value of key

set

Persist a value to AsyncStorage. Wrapper around setItem & multiSet.

Parameters

  • key
  • value Any to persist

Returns Promise

update

Update key with value by merging. Wrapper around mergeItem & multiMerge.

Parameters

  • key
  • value any to update

Returns Promise

remove

Remove a key from AsyncStorage. Wrapper around removeItem & multiRemove.

Parameters

  • key

Examples

storage.remove(key).then(console.log).catch(console.error)

Returns Promise

clear

Erase all AsyncStorage data.

Returns Promise

keys

Retreive all the keys stored in AsyncStorage of application. Wrapper around getAllKeys

Returns Promise

Contribute

  1. Fork it and create your feature branch: git checkout -b my-new-feature
  2. Commit your changes: git commit -am 'Add some feature'
  3. Push to the branch: git push origin my-new-feature
  4. Submit a pull request

License

MIT