AsyncStorage
AsyncStorage是一个简单的,未加密的,异步的,持久化,关键值存储系统,是全局的。类似于iOS中的NSUserDefault.
存值:
import {
AppRegistry,
StyleSheet,
Text,
View,
AsyncStorage
} from 'react-native';
try {
AsyncStorage.setItem(
'key',
'shaoting',
(error)=>{
if (error){
alert('存值失败:',error);
}else{
alert('存值成功!');
}
}
);
} catch (error){
alert('失败'+error);
}
取值:
try {
AsyncStorage.getItem(
'key',
(error,result)=>{
if (error){
alert('取值失败:'+error);
}else{
alert('取值成功:'+result);
}
}
)
}catch(error){
alert('失败'+error);
}
移除值:
try {
AsyncStorage.removeItem(
'key',
(error)=>{
if(!error){
alert('移除成功');
}
}
)
}catch (error){
alert('失败',+error);
}
},
完整代码:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
AsyncStorage
} from 'react-native'; var Mine = React.createClass({
render() {
return (
<View style={styles.container}>
<Text onPress={this.saveData} style={styles.welcome}>
存值:key='key',存shaoting
</Text>
<Text onPress={this.getValue} style={styles.welcome}>
取值
</Text>
<Text onPress={this.removeData} style={styles.welcome}>
删除数据
</Text>
</View>
);
},
saveData(){
try {
AsyncStorage.setItem(
'key',
'shaoting',
(error)=>{
if (error){
alert('存值失败:',error);
}else{
alert('存值成功!');
}
}
);
} catch (error){
alert('失败'+error);
}
},
getValue(){
try {
AsyncStorage.getItem(
'key',
(error,result)=>{
if (error){
alert('取值失败:'+error);
}else{
alert('取值成功:'+result);
}
}
)
}catch(error){
alert('失败'+error);
}
},
removeData(){
try {
AsyncStorage.removeItem(
'key',
(error)=>{
if(!error){
alert('移除成功');
}
}
)
}catch (error){
alert('失败',+error);
}
},
}); var styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor:'white',
},
welcome: {
fontSize: 20,
textAlign: 'center',
margin: 10,
}
}); module.exports = Mine;
运行效果: