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;

  运行效果:

 

React Native使用AsyncStorage本地持久化的更多相关文章

  1. [RN] React Native 使用 AsyncStorage 存储 缓存数据

    React Native 使用 AsyncStorage 存储 缓存数据 AsyncStorage是一个简单的.异步的.持久化的Key-Value存储系统,它对于App来说是全局性的.这是官网上对它的 ...

  2. React Native Android增加本地图片

    将图片文件 UePbdph.png 放入与index.android.js的同目录中,在index.android.js中引入: <Image source={require('./UePbdp ...

  3. react native 之 AsyncStorage

    新版本中不时从react-native导入了,而是 react-native-async-storage 使用static setItem(key: string, value: string, [c ...

  4. React Native之持久化存储(AsyncStorage、react-native-storage)的使用

    AsyncStorage是一个简单的.异步的.持久化的Key-Value存储系统,它对于App来说是全局性的.这是官网上对它的介绍.可以知道,这个asyncstorage也是以键值对的形式进行存储数据 ...

  5. react native AsyncStorage的使用

    如果现在有一个需求,是要把用户的账号密码保存到本地,大家会怎么做的呢?如果在android中,我相信一大部分人会想到SharedPreferences,这是一个以键值对的形式进行存储的.那如果在rea ...

  6. React Native之数据存储技术AsyncStorage

    1. 如何将数据存储到本地? 数据存储是开发APP必不可少的一部分,比如页面缓存,从网络上获取数据的本地持久化等,那么在RN中如何进行数据存储呢? RN官方推荐我们在RN中使用AsyncStorage ...

  7. 从零学React Native之13 持久化存储

    数据持久化就是指应用程序将某些数据存储在手机存储空间中. 借助native存储 这种方式不言而喻,就是把内容传递给native层,通过原生API存储,详见从零学React Native之05混合开发 ...

  8. React Native之图片保存到本地相册(ios android)

    React Native之图片保存到本地相册(ios android) 一,需求分析 1,react native保存网络图片到相册,iOS端可以用RN自带的CameraRoll完美解决,但是andr ...

  9. React Native之本地文件系统访问组件react-native-fs的介绍与使用

    React Native之本地文件系统访问组件react-native-fs的介绍与使用 一,需求分析 1,需要将图片保存到本地相册: 2,需要创建文件,并对其进行读写 删除操作. 二,简单介绍 re ...

随机推荐

  1. 用webdriver+phantomjs实现无浏览器的自动化过程

    环境准备 1. 安装python: 2. 安装pip: 3. 通过pip安装selenium: 4. 下载phantomJS的包并解压缩: 1. 若在Windows系统中,将下载的phantomjs文 ...

  2. 内核编译选配(VMware篇)

    出现这个错误的原因是相应的驱动程序没有编译进内核,所以在内核启动时,不认识分区. 一.磁盘驱动没编译进内核 VMware5.5.3 的磁盘有两种,一种是IDE的,一种是SCSI的:VMware 你在新 ...

  3. 基于.NET的微软ORM框架视频教程(Entity Framework技术)

    基于.NET的微软ORM框架视频教程(Entity Framework技术) 第一讲  ORM映射 第二讲 初识EntifyFramework框架 第三讲 LINQ表达式查询 第四讲 LINQ方法查询 ...

  4. 关于Python中输出中文的一点疑问

    #encoding=gb2312 import urllib import re def getHtml(url): page = urllib.urlopen(url) html = page.re ...

  5. 1074, "Column length too big for column 'err_solution' (max = 21845); use BLOB or TEXT instead"

    一个注意点,就是sqlalchemy 使用create_all()建表的时候,要在 create_all()所在页面import那些表的model sqlalchemy.exc.Operational ...

  6. GreenPlum简单性能测试与分析--续

    版权声明:本文由黄辉原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/259 来源:腾云阁 https://www.qclou ...

  7. SpringMVC -- 梗概--贰

    1.为什么要配置: mvc:annotation-driven 1>在springMVC的处理流程中,有两个重要组件:HandlerMapping和HandlerAdapter 分别负责解析Ha ...

  8. C语言输出字符串

    在VS2012中,使用gets_s()方法,其中第二个参数可以用sizeof(...)代替.例子代码如下: #include <stdio.h> int main( ) { ]; gets ...

  9. 读<jquery 权威指南>[2]-事件

    1.  事件冒泡 阻止事件冒泡的两种方式: event.stopPropagation(); return false ; 2. 绑定事件——bind(type,[data],function) ty ...

  10. 注册Github

    注册Github 1.打开Github网页 2.设置用户名.邮箱.密码(右侧会显示是否可以使用),点击注册 3.此时邮箱会发来来自Github的注册消息,进入邮箱,点连接,完成注册 4.注册成功