1. 程式人生 > >appCan開發:用appcan.locStorage實現本地快取

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物件中我們需要的資料了。