不二如是 发表于 2018-7-21 10:11:11

067 ∞ 保存计算到本地缓存

本帖最后由 不二如是 于 2018-7-21 10:11 编辑

http://xxx.fishc.org/forum/201805/02/171248f4zdsipf6d4qjnjl.png

上一讲我们优化了UI组件,本次学习两个API接口,为存储运算记录做准备~

要将数据保存到本地缓存,可使用微信小程序提供的两个API接口函数:wx.setStorage、wx.setStorageSync。

接下来,就让我们一个一个来学习下~



wx.setStorage(OBJECT)

使用wx.setStorage函数可将数据保存到本地缓存的指定key中,如果在本地缓存中已存在指定的key,则会覆盖对应的内容。

这个接口函数是一个异步接口,其参数是个Object对象,有以下属性:

参数        类型        必填        说明
key        String        是        本地缓存中的指定的 key
data        Object/String        是        需要存储的内容
success        Function        否        接口调用成功的回调函数
fail        Function        否        接口调用失败的回调函数
complete        Function        否        接口调用结束的回调函数(调用成功、失败都会执行)


示例代码:
wx.setStorage({
key:"key",
data:"value",
success:function(e){
console.log("已成功存储本地缓存");
console.log(e);
},
fail:function(err){
console.log("存储失败");
console.log(err);
},
complete:function(e){
console.log("完成存储");
console.log(e);
}
})
这段代码在本地缓存中保存一个名为“key”的缓存数据,其值为“value”。

当缓存保存成功后将调用success中嗲吗,然后调用complete中代码。

当缓存保存失败后将调用fail中代码,然后调用complete中代码。

由于正常情况下本地缓存肯定是成功的,所以控制台输出的Object对象中的errMsg属性会输出“setStroage:ok”



wx.setStorageSync(KEY,DATA)

wx.setStorageSync接口函数与wx.setStorage相同,将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容。

不同之处是它是一个同步接口。

因此不需要success,fail,complete这些回掉函数,key,data参数说明:

参数        类型        必填        说明
key        String        是        本地缓存中的指定的 key
data        Object/String        是        需要存储的内容


在很多情况下使用同步接口就足够了,只是需要注意:
使用同步接口函数时,最好在外部包一个错误捕获。

示例:
try {
    wx.setStorageSync('key', 'value')
} catch (e) {   
    console.log(e)
}




课后作业


1、以下选项哪个是wx.setStorage函数Object对象的属性?
a.errMsgb.datac.keyd.catch

2、使用同步接口函数要注意什么?



答案:
**** Hidden Message *****



如果有收获,别忘了评分{:10_281:} :

http://xxx.fishc.org/forum/201709/19/094516hku92k2g4kefz8ms.gif

这位鱼油,如果喜欢小程序,请订阅 专辑(传送门)(不喜欢更要订阅{:10_297:} )

http://xxx.fishc.org/forum/201803/21/151715umqz1qoywp11wjbq.gif

一笙彤 发表于 2020-7-11 09:58:40

0
页: [1]
查看完整版本: 067 ∞ 保存计算到本地缓存