native数据类型 react_React-Native 之 数据持久化

本文介绍了React-Native中数据持久化的两种常见方法:AsyncStorage和Realm。AsyncStorage是官方推荐的存储方式,主要用于字符串键值对的存储,而Realm是移动端数据存储的新选择,提供了更方便的操作。文章通过实例展示了如何使用这两个库进行数据的增、删、查、改操作,并提到了React-Native中文网提供的react-native-storage框架进行封装,以提高使用效率。
摘要由CSDN通过智能技术生成

前言

因为 实战项目系列 涉及到数据持久化,这边就来补充一下。

如本文有错或理解偏差欢迎联系我,会尽快改正更新!

如有什么问题,也可直接通过邮箱 277511806@qq.com 联系我。

数据持久化

数据持久化一直都是软件开发中重要的一个环节,几乎所有的应用都具备这一项功能;那什么是数据持久化呢?—— 说白了就是数据的本地化存储,将数据存储到本地,在需要的时候进行调用。

这边我们介绍两种在 React-Native 中比较常用的存储方式

AsyncStorage:这是官方使用的存储方式,类似于 iOS 中的 NSUserDefault ,区别在于,AsyncStorage 只能存储 字符串键值对,而 NSUserDefault 可以存储 字符串和number。

Realm:今天才发现 Realm 也已经支持 React-Native ,这是新兴的移动端数据存储方式,在没有它之前,一直都是使用 sqlist 进行数据存储,在性能上,各有优势,但是操作上,Realm 有着明显优势,更方便使用。

接下来我们就来看看怎么使用它们。

AsyncStorage 简单使用

AsyncStorage方法官方文档写得很详细,这边就不对赘述了!

AsyncStorage 使用方法很简单,我们就直接上代码:

// 增加

createData() {

AsyncStorage.setItem('name', JSON.stringify('吉泽明步'), (error, result) => {

if (!error) {

this.setState({

data:'保存成功!'

})

}

});

}

// 查询

inquireData() {

AsyncStorage.getItem('name')

.then((value) => {

let jsonValue = JSON.parse((value));

this.setState({

data:jsonValue

})

})

}

// 更新

upData() {

AsyncStorage.setItem('name', JSON.stringify('苍井空'), (error, result) => {

if (!error) {

this.setState({

data:'更新成功!'

})

}

});

}

// 删除

removeData() {

AsyncStorage.removeItem('name');

this.setState({

data:'删除完成!'

})

}

AsyncStorage效果演示.gif

按照官方推荐,我们使用 AsyncStorage 前,最好进行一层封装,React-Native中文网 给我们提供了一个比较好的框架 —— react-native-storage,我们可以直接使用它,方法很简单,说明文档中说得很详细。

既然是第三方框架,那么第一部肯定就是导入到我们的工程中:

npm install react-native-storage --save

接着,我们根据创建一个 Storage 文件专门对框架进行初始化操作:

import {

AsyncStorage,

} from 'react-native';

// 第三方框架

import Storage from 'react-native-storage';

var storage = new Storage({

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值