ReactNative (API)AsyncStorage存儲詳解及實例
AsyncStorage存儲類似Android中的sharedpreference存儲或者IOS中的NSDefaultUser不過ReactNative中的AsyncStorage只能存儲字符串類型
常用方法:
getItem(key:string,callback?:?(error:?Error,result:?string)=>void) 靜態(tài)方法,該通過key字段來進行查詢存儲的數(shù)據(jù),把該結(jié)果值作為參數(shù)傳入第二個callback方法。如果發(fā)生錯誤,會把Error對象傳入callback方法。該方法最終返回一個Promise對象
setItem(key:string,value:string,callback?:?(error:?Error)=>void) 靜態(tài)方法,該根據(jù)key字段設(shè)置value內(nèi)容,完成之后進行回調(diào)callback方法。如果發(fā)生錯誤會把Error對象傳入callback方法中。該方法返回一個Promise對象。
removeItem(key:string,callback?:?(error:?Error)=>void) 靜態(tài)方法,根據(jù)key進行刪除值,成功之后進行回調(diào)callback方法。如果發(fā)生錯誤會把Error對象傳入callback方法中。該方法返回一個Promise對象。
/** * Created by Administrator on 2016/9/12. */ import React, {Component} from 'react'; import { StyleSheet, View, Text, AsyncStorage } from 'react-native'; var keyName = 'name'; var keyValue = '張三'; class AsyncStorageG extends Component { constructor(props) { super(props); this.state = { result: '初始值' }; } render() { return ( <View style={{flex: 1}}> <Text style={styles.text} onPress={this.save.bind(this)}>存</Text> <Text style={styles.text} onPress={()=>this.load()}>取</Text> <Text style={styles.text} onPress={()=> this.remove()}>刪除</Text> <Text style={styles.text} >存儲的內(nèi)容是------------------{this.state.result}</Text> </View> ) } /** * 存數(shù)據(jù) */ save() { //this 是指當前對象 this2 = this; AsyncStorage.setItem(keyName, keyValue, function (error) { if (error) { alert('存儲失敗'); } else { this2.setState( { result: '數(shù)據(jù)已經(jīng)保存,取出來看看吧?。?!' } ) } }) } /** * 取數(shù)據(jù) */ load() { //this 是指當前對象 this2 = this; AsyncStorage.getItem(keyName, function (error, result) { if (!error) { this2.setState( { result: result === null ? '數(shù)據(jù)已經(jīng)刪除,現(xiàn)在取的是空值' : result } ) } }) } /** * 兩個參數(shù): * 一個是要刪除指定key內(nèi)容 * 第二個是一個回調(diào)函數(shù) */ remove() { //this 是指當前對象 this2 = this; AsyncStorage.removeItem(keyName, function (error) { if (!error) { this2.setState( { result: '數(shù)據(jù)已經(jīng)刪除' } ) } }) } } const styles = StyleSheet.create({ text: { fontSize: 20 } }); //es6寫法 export default AsyncStorageG;
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Android如何讓APP無法在指定的系統(tǒng)版本上運行(實現(xiàn)方法)
這篇文章主要介紹了Android如何讓APP無法在指定的系統(tǒng)版本上運行(實現(xiàn)方法),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02Android使用WindowManager構(gòu)造懸浮view
這篇文章主要為大家詳細介紹了Android使用WindowManager構(gòu)造懸浮view的具體方法,感興趣的小伙伴們可以參考一下2016-05-05Android實現(xiàn)關(guān)機重啟的方法分享
這篇文章主要介紹了Android實現(xiàn)關(guān)機重啟的方法,需要的朋友可以參考下2014-02-02