像京东,淘宝等app登陆一次在账户未出现问题(如密码修改,账户异常等)情况下再次打开客户端都不需要登陆,为了实现类似原生app的长登陆,今天就分享下在react-native中如何实现这一逻辑:
AsyncSotrage 是官方提供的异步存储,类似安卓的sp(sharePreference)和ios的NSUserDefaults,适合存储用户的账户信息,登陆信息等,官方介绍点这里,
当然,文档中也说了 react-native中文网维护了一个封装后的react-native-storage模块,使用更方便,避免重复造轮子,用起来,
首先,需要对storage进行初始化
/** * Created by lubowen on 2017/3/8. */ import { AsyncStorage } from 'react-native'; import Storage from 'react-native-storage'; // import NetTool from '../common/NetTool' import {HOST} from '../common/NetAPI' //存储token var storage = new Storage({ // 最大容量,默认值1000条数据循环存储 size: 1000, // 存储引擎:对于RN使用AsyncStorage,对于web使用window.localStorage // 如果不指定则数据只会保存在内存中,重启后即丢失 storageBackend: AsyncStorage, // 数据过期时间,默认一整天(1000 * 3600 * 24 毫秒),设为null则永不过期 default