ReactNative之本地存储

作者: 袁峥 | 来源:发表于2017-05-17 15:38 被阅读2643次

    前言

    眼看很多公司都开始尝试使用ReactNative,达到跨平台开发,最近也写了很多文章,希望让更多想了解的同学快速上手ReactNative.

    如果喜欢我的文章,可以关注我微博:袁峥Seemygo

    ReactNative之本地存储

    • 在RN开发中,如何持久化存储数据,可以使用AsyncStorage,对原生的API进行了一层封装,通过它,就能把数据保存到真机中。

    AsyncStorage使用

    • 存储
      • 注意:`AsyncStorage``只能存储字符串,需要把对象转换为字符串才行
      save(){
    
            var object = {
                name:'xmg',
                age:18
            };
    
            // JSON.stringify(object): JSON对象转换为字符串 用来存储
            AsyncStorage.setItem('object',JSON.stringify(object),(error)=>{
                if (error) {
                    alert('存储失败');
                } else  {
                    alert('存储成功');
                }
            });
        }
    
    • 读取
        read(){
            AsyncStorage.getItem('object',(error,result)=>{
                if (!error) {
                    console.log(result);
                }
            })
        }
    
    
    • 删除
     delete(){
            AsyncStorage.removeItem('object',(error)=>{
                if (error) {
                    alert('删除失败');
                } else  {
                    alert('删除成功');
                }
            });
        }
    

    AsyncStorage原理:

    • AsyncStorage存储数据,在iOS中,底层会把数据保存到沙盒中的Documents中,并生成manifest.json文件。保存的数据都在manifest.json中。
    存储文件路径.png 存储数据.png
    • AsyncStorage删除数据,也仅仅是删除manifest.json文件中的数据,并不是删除manifest.json文件

    ![Uploading 删除数据_712538.png . . .]

    相关文章

      网友评论

      本文标题:ReactNative之本地存储

      本文链接:https://www.haomeiwen.com/subject/spmdxxtx.html