🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

@react-native-pure/async-storage-extra

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@react-native-pure/async-storage-extra

AsyncStorage扩展

latest
Source
npmnpm
Version
2.0.4
Version published
Weekly downloads
18
200%
Maintainers
1
Weekly downloads
 
Created
Source

async-storage-extra

AsyncStorage扩展,所有AsyncStorage中的数据都可以同步进行读写,同时数据也会被持久化.可以监听每个key的变化

Build Status Coverage Status

Install

$ npm i @react-native-pure/async-storage-extra --save

Simple Usage

import Storage from "@react-native-pure/async-storage-extra

const User=new Storage("@user");

User.setItem("name","Mr");
User.setItem("age",10);
User.setItem("birthday",new Date());
User.setItem("other",{});

绑定Storage中的数据到Component

import * as React from "react"
import {View,Text} from "react-native"
import {storage} from "@react-native-pure/async-storage-extra

@storage(
    User.connect(["name","age"],([name,age])=>({name,age}))
)
class User extends React.Component{
    render(){
        return (
            <View>
                <Text>Name : {this.props.name}</Text>
                <Text>Age : {this.props.age}</Text>
            </View>
        );
    }
}

Storage

默认情况下,在初始化Storage时会自动从AsyncStorage中恢复数据,数据恢复完成会触发onPreload事件.

PS:当使用setItem,multiSet设置的数据和存在的数据一样时(DeepEqual),将不会触发任何事件和写操作.

  • constructor (option:string|StorageOption={prefix:"@storage",preload:true})=>void
  • getItem (key:string)=>any
  • multiGet (keys:Array)=>Array<[key,value]>
  • search (pattern:RegExp)=>Array<[key,value]>
  • setItem (key:string,value:any)=>void
  • multiSet (keyValuePairs:Array<[key,value]>)=>void
  • removeItem (key:string)=>void
  • multiRemove (keys:Array)=>void
  • clear ()=>void
  • getAllKeys ()=>Array
  • getKeys (pattern:RegExp)=>Array
  • addListener (key:string,callback:(value:any)=>void)=>Object
  • once (key:string,callback:(value:any)=>void)=>Object
  • removeAllListeners (key:string)=>void
  • connect (keys:Array,mapStateToProps:(Array)=>Object)=>void
  • restore ()=>void 从AsyncStorage中恢复数据
  • release ()=>void 释放内存,Storage中的数据将不可用

StorageOption

  • prefix string
  • preload boolean
  • onPreload (self:Storage)=>void

Keywords

async-storage

FAQs

Package last updated on 24 May 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts