我们在开发的过程中,常常会用到本地存储,下面我给大家分享一下本地存储的使用。
一、数据支持
需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。
二、方法
1、同步
(1)wx.setStorageSync(); //存储值
try {
wx.setStorageSync('key', 'value')
} catch (e) {
}
(2)wx.removeStorageSync(); // 移除指定的值
try {
wx.removeStorageSync('key')
} catch (e) {
// Do something when catch error
}
(3)wx.getStorageSync(); // 获取值
try {
var value = wx.getStorageSync('key')
if (value) {
// Do something with return value
}
} catch (e) {
// Do something when catch error
}
(4)wx.getStorageInfoSync(); // 获取当前 storage 中所有的 key
try {
const res = wx.getStorageInfoSync()
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
} catch (e) {
// Do something when catch error
}
(5)wx.clearStorageSync(); // 清除所有的key
try {
wx.clearStorageSync()
} catch(e) {
// Do something when catch error
}
2、异步
(1)wx.setStorage(); //存储值
将数据存储在本地缓存中指定的 key 中。会覆盖掉原来该 key 对应的内容。数据存储生命周期跟小程序本身一致,即除用户主动删除或超过一定时间被自动清理,否则数据都一直可用。单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。
wx.setStorage({
key:"key",
data:"value"})
(2)wx.removeStorage(); // 移除指定的值
wx.removeStorage({
key: 'key',
success (res) {
console.log(res)
}})
(3)wx.getStorage(); // 获取值
wx.getStorage({
key: 'key',
success (res) {
console.log(res.data)
}})
(4)wx.getStorageInfo(); // 获取当前 storage 中所有的 key
wx.getStorageInfo({
success (res) {
console.log(res.keys)
console.log(res.currentSize)
console.log(res.limitSize)
}})
(5)wx.clearStorage(); // 清除所有的key
wx.clearStorage()