AsyncStorage尝试

2016-04-15  本文已影响726人  MrLiuYS

AsyncStorage中文使用文档

保存数据到本地

在开发中我们经常会碰到保存数据到本地,进行持久化.使用AsyncStorage,就如下

//保存数据
setObject(key,object){
    AsyncStorage.setItem(key, JSON.stringify(object), () => {});
},

可以将数据保存到本地,在其他地方要调用的时候只需要

<class>.setObject(<key>,<object>)

就可以实现保存到本地了.ok,这比较简单,看看获取本地数据


读取本地数据

我们是不是可以直接向上述将的那样子获取来读取数据?

//获取数据
getObject(key){
    AsyncStorage.getItem(key, (error, object) => {
        if (error) {
            console.log('Error:' + error.message);
            return ();
        } else {
            return(object);
        }
    })},

通过调用方法

//需要将获取到的值赋值给某个对象
this.setState( { <key>:<class>.getObject(<key>) } )

运行传递出来的值是空的.后来想了很久使用下面的方法,就能够获取到值了

//获取数据
getObject(key,callback){
    AsyncStorage.getItem(key, (error, object) => {
        if (error) {
            console.log('Error:' + error.message);
            callback();
        } else {
            callback(JSON.parse(object));
        }
    })},

调用的方法,将方法封装在QMStorage

QMStorage.getObject(<key>,(object) => 
        this.setState({
                <key>: object
        })
)

初学者,怀念OC.

上一篇 下一篇

猜你喜欢

热点阅读