微信小程序怎么进行数据缓存

微信小程序怎么进行数据缓存,第1张

每个微信小程序都可以有自己的本地缓存,可以通过 wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。本地缓存最大为10MB。

注意: localStorage 是永久存储的,但是我们不建议将关键信息全部存在 localStorage,以防用户换设备的情况。

wx.setStorage(OBJECT)

数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。

OBJECT参数说明:

示例代码

?

1234

wx.setStorage({ key:"key" data:"value"})

wx.setStorageSync(KEY,DATA)

将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。

OBJECT参数说明:

示例代码

?

1234

try { wx.setStorageSync('key', 'value')} catch (e) { }

wx.getStorage(OBJECT)

从本地缓存中异步获取指定 key 对应的内容。

OBJECT参数说明:

示例代码:

?

123456

wx.getStorage({ key: 'key', success: function(res) { console.log(res.data) } })

wx.getStorageSync(KEY)

从本地缓存中同步获取指定 key 对应的内容。

参数说明:

示例代码:

?

12345678

try { var value = wx.getStorageSync('key') if (value) { // Do something with return value }} catch (e) { // Do something when catch error}

wx.getStorageInfo(OBJECT)

异步获取当前storage的相关信息

OBJECT参数说明:

success返回参数说明:

示例代码:

?

1234567

wx.getStorageInfo({ success: function(res) { console.log(res.keys) console.log(res.currentSize) console.log(res.limitSize) }})

wx.getStorageInfoSync

同步获取当前storage的相关信息

示例代码:

?

12345678

try { var res = wx.getStorageInfoSync() console.log(res.keys) console.log(res.currentSize) console.log(res.limitSize)} catch (e) { // Do something when catch error}

wx.removeStorage(OBJECT)

从本地缓存中异步移除指定 key 。

OBJECT参数说明:

示例代码:

?

123456

wx.removeStorage({ key: 'key', success: function(res) { console.log(res.data) } })

wx.removeStorageSync(KEY)

从本地缓存中同步移除指定 key 。

参数说明:

示例代码:

?

12345

try { wx.removeStorageSync('key')} catch (e) { // Do something when catch error}

wx.clearStorage()

清理本地数据缓存。

示例代码:

?

1

wx.clearStorage()

wx.clearStorageSync()

同步清理本地数据缓存

示例代码:

?

12345

try { wx.clearStorageSync()} catch(e) { // Do something when catch error}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

微信小程序的编写中,涉及到有些业务场景需要将数据缓存到本地,则微信小程序api提供了两个接口函数,

wx.setStorage可以将数据缓存在本地指定的key中,如果本地缓存已经存在指定的key,则会覆盖该key对应的内容,这是一个异步的接口,在调用时会涉及到成功,失败,完成三个状态,

与wx.setStorage唯一不同的就是wx.setStorageSync是同步进行的,所以不会涉及到成功,失败,完成等回调,但是在使用时需要使用try.......catch....来捕获异常;

现在编写一个将字符串缓存本地的例子

编译项目,点击缓存按钮:

现在改变缓存的内容,但是缓存的key保持不变

可以看到第二次的内容把第一次覆盖了。

将内容缓存到本地之后,将其从本地提取展示出来,则可是使用微信小程序api提供的两个接口:wx.getStorageInfo(Object object),wx.getStorageSync(string key),与缓存同样,读取缓存也分同步和异步;

我们将刚刚存储到本地的数据展示到页面上:

编译项目,点击按钮获取缓存数据并将其展示到页面上。

完成了本地数据的缓存,获取,则接下来就是关于缓存数据的清除,同样微信小程序api也提供了可使用的接口,

至此微信小程序本地保存数据就此结束!

手机缓存数据是手机上的应用程序在使用过程中下载的临时文件,方便下次使用时快速调用,但是如果手机的应用程序的缓存数据过多会占用手机的存储空间。

以iPhone 7手机为例,清除手机的缓存数据 *** 作步骤如下:

1、打开手机上需要清除缓存数据的应用。

2、点击“设置”。

3、点击“清除缓存”,即可把该应用的缓存数据清理。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11926918.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存