appCan开发:用appcan.locStorage实现本地缓存

小编最近也是刚学习怎么利用appCan封装好的appcan.locStorage进行本地存储。

首先简单介绍下我理解的locStorage:它存储的一律是字符串类型的数据;存储方式是以键值对的形式。即(“key”,value)形式,key表示你给你要存储的东西取个名字。value就是你要存储的东西。

例子:

appcan.locStorage.setVal("name", clare);//存储clare这个字符串,key值是name。

然后如果我要在哪里用到的话,直接用 var i=appcan.locStorage.getVal("name") ;这个取出来就可以了(i就等于clare这个字符串)。

好了,存储的原理讲完了,下面来说一下如何用。

现在假设前段已经接收到了服务器端传过来的对象data了。如图,是这样的:


然后我想用locStorage缓存这个data对象,但是问题是locStorage只能存字符串啊,咋办呢?

我们可以先把data对象转化成字符串,利用JSON.stringify()方法可以将json格式的对象转化成字符串:转化后上面的json对象就变成了如图的字符串了,然后就可以缓存了。


具体参考代码如下:

appcan.request.ajax({
            type : "post",
            url : ajaxUrlHead + "employees/queryOneMobile",
            data : {
                "employId" : employId
            },
            dataType : "json",
            success : function(data) {
                var per_info1 = JSON.stringify(data);//把服务器传过来的data对象转化成字符串per_info
                appcan.locStorage.setVal("per_info", per_info1);//把字符串per_info缓存下来

            }
});

//如果某个地方需要用到这个上面的data对象
var data = JSON.parse(appcan.locStorage.getVal("per_info"));//将缓存的字符串per_info重新转化成data对象

//然后再用data.name,data.id等等方式来操作data对象中我们需要的数据了。


你可能感兴趣的:(appCan)