uinapp的setStorageSync和setStorage的区别

简介: uinapp的setStorageSync和setStorage的区别

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

uni.setStorage({
   
    key: 'storage_key',
    data: 'hello',
    success: function () {
   
        console.log('success');
    }
});

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

try {
   
    uni.setStorageSync('storage_key', 'hello');
} catch (e) {
   
    // error
}

区别:异步不会阻塞当前任务,同步缓存直到同步方法处理完才能继续往下执行。异步就是不管保没保存成功,程序都会继续往下执行.同步是等保存成功了,才会执行下面的代码.使用异步,性能会更好;而使用同步,数据会更安全。

注意
uni-app的Storage在不同端的实现不同:
  1. H5端为localStorage,浏览器限制5M大小,是缓存概念,可能会被清理
  2. App端为原生的plus.storage,无大小限制,不是缓存,是持久化的
  3. 各个小程序端为其自带的storage api,数据存储生命周期跟小程序本身一致,即除用户主动删除或超过一定时间被自动清理,否则数据都一直可用。(微信小程序单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。支付宝小程序单条数据转换成字符串后,字符串长度最大200*1024。同一个支付宝用户,同一个小程序缓存总上限为10MB。)

相关文章
|
开发框架 移动开发 Android开发
uniapp的几种跳转方式
uniapp的几种跳转方式
|
Web App开发 iOS开发
a标签实现文件流下载
a标签实现文件流下载
798 0
|
小程序 API 索引
uniapp中uview组件库中丰富的Picker 选择器用法
uniapp中uview组件库中丰富的Picker 选择器用法
3039 0
|
JavaScript 前端开发
uniapp如何定义全局变量?
uniapp如何定义全局变量?
991 0
uni-app监听页面滚动
uni-app监听页面滚动
1275 0
|
定位技术 开发者
uni-app获取地理位置
uni-app获取地理位置
2069 0
Threejs使用精灵Sprite作为标签,鼠标悬浮精灵上时鼠变小手
Threejs使用精灵Sprite作为标签,鼠标悬浮精灵上时鼠变小手
2316 0
Threejs使用精灵Sprite作为标签,鼠标悬浮精灵上时鼠变小手
Element的el-table行列错位对不齐问题处理
本文目录 1. 问题表现 2. 问题发现 3. 问题处理 4. 另一种处理方案
6399 0
Element的el-table行列错位对不齐问题处理
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
3724 0
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
2862 0