uniapp数据缓存就是利用浏览器的localStorage存储。

官网详解:uni.setStorage(OBJECT) @setstorage | uni-app官网

1.异步存储

uni.setStorage(OBJECT)

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

参数名 类型 必填 说明
key String 本地缓存中的指定的 key
data Any 需要存储的内容,只支持原生类型、及能够通过 JSON.stringify 序列化的对象
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例:

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

注意:uni-uni_dcloud-dcloud_为前缀的key,为系统保留关键前缀。如uni_deviceIduni_id_token,请开发者为key命名时避开这些前缀。

uni.getStorage(OBJECT)

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

参数名 类型 必填 说明
key String 本地缓存中的指定的 key
success Function 接口调用的回调函数,res = {data: key对应的内容}
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)
uni.getStorage({key: 'storage_key',success: function (res) {console.log(res.data);}
});

2.同步存储

uni.setStorageSync(KEY,DATA)

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

参数名 类型 必填 说明
key String 本地缓存中的指定的 key
success Function 接口调用的回调函数,res = {data: key对应的内容}
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

示例:

uni.setStorageSync('storage_key', 'hello');

uni.getStorageInfoSync()

try {const res = uni.getStorageInfoSync();console.log(res.keys);console.log(res.currentSize);console.log(res.limitSize);
} catch (e) {// error
}

清除和删除操作请移步官网查看详细操作~

3.扩展(localStorage)

优点:
localStorage 拓展了 cookie 的 4K 限制。

localStorage 会可以将第一次请求的数据直接存储到本地,这个相当于一个 5M 大小的针对于前端页面的数据库

缺点:
localStorage在浏览器的隐私模式下面是不可读取的。

localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡。

区别:
localStorage 与 sessionStorage 的唯一一点区别就是 localStorage 属于永久性存储,而 sessionStorage 属于当会话结束的时候,sessionStorage 中的键值对会被清空。

uniapp数据缓存相关推荐

  1. uniapp数据缓存的坑

    官网代码: uni.setStorage({key: 'storage_key',data: 'hello',success: function () {console.log('success'); ...

  2. uni-app清理缓存数据_数据清理-从哪里开始?

    uni-app清理缓存数据 It turns out that Data Scientists and Data Analysts will spend most of their time on d ...

  3. uni-app知识点整理(5)- 网络请求、数据缓存、图片上传和预览

    目录 一.网络请求 1.1 发送get请求 二.数据缓存 2.1 uni.setStorage(OBJECT) 2.2 uni.setStorageSync(KEY,DATA) 2.3 uni.get ...

  4. uni-app【数据缓存API】

    数据缓存API uni.setStorage(OBJECT) uni.setStorageSync(KEY,DATA) uni.getStorage(OBJECT) uni.getStorageSyn ...

  5. Uni-app的学习Ⅲ(事件、生命周期、上下拉刷新、网络请求、数据缓存、图片操作、条件注释)

    一.事件 事件绑定 在uni中事件绑定和vue中是一样的,通过v-on进行事件的绑定,也可以简写为@ <button @click="tapHandle">点我啊< ...

  6. 开启这个数据缓存,一键加速你的小程序。

    大部分采用 WordPress Rest 开发的 App 应用或者小程序都需要对 REST API 进行数据缓存,从而提升应用(小程序)加载数据速度. 丸子小程序付费版插件虽然很早就已经集成了 RES ...

  7. iOS开发网络——数据缓存

    一.关于同一个URL的多次请求 有时候,对同一个URL请求多次,返回的数据可能都是一样的,比如服务器上的某张图片,无论下载多少次,返回的数据都是一样的. 上面的情况会造成以下问题 (1)用户流量的浪费 ...

  8. php实现基于shmop扩展的数据缓存

    http://eslizn.com/post/php-data-cache-for-shmop.html 今天上课时研究了下PHP的数据缓存,根据网上的资料,一般采用serialize序列化存储,读取 ...

  9. Redis在windows实现将数据缓存起来定时更新读取

    实现接口的读取存放在内存中,实现了Web网站直接读取内存数据,大大的减少了访问接口带来的等待时间,这个功能是比较实用的 需要下载一下'类库'及'Redis-x64-3.2.100程序包' 百度云材料下 ...

最新文章

  1. 高频开关电源原理_程控开关电源的工作原理
  2. 自动驾驶测试:MIL、SIL、PIL、HIL
  3. linux之history命令
  4. ASP.Net面向对象思想
  5. BUUCTF Web [GXYCTF2019]Ping Ping Ping
  6. oracle buffercache,Oracle DBA开发之:使用sql来查看buffer cache的使用情况
  7. FeelYourSound Chillout Engine Pro for Mac - MIDI文件生成插件
  8. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_4_Object类中wait带参方法和notifyAll方法...
  9. (附源码)计算机毕业设计SSM餐厅订餐系统
  10. python-白盒测试方法
  11. python期货基本面分析_期货盘面分析语言,我用python做期货
  12. L9110H电机驱动模块-FPGA
  13. linux系统怎么拨号上网,linux配置上网 linux adsl拨号上网设置
  14. 霍普金斯计算机专业研究生如何,约翰·霍普金斯大学电气和计算机工程硕士研究生...
  15. 教你一招,免费拆分pdf
  16. VS开发Qt应用时遇到“找不到VCRUNTIME140D_APP.dIl,无法继续执行代码”的错误
  17. 【Pandas总结】第六节 Pandas 添加列
  18. 海思hi3531处理器参数,hi3531芯片详细信息简介
  19. 网赚点击通用教程! - 健康程序员,至尚生活!
  20. python编程从入门到实践练习8-6:城市名

热门文章

  1. 可以免费下载字体包的地址
  2. 字母的加密变换 c语言,有一种简单的对英文字母加密的变换方法是将字母的ASIIC编码自动加5,为了保证变更后的数值仍处于英文字母...
  3. 台式计算机如何定时关机,电脑在哪设置定时关机
  4. 最新传奇MA游戏官网社区Discuz模板源码
  5. 高级IO--select
  6. centos7.4 限制用户登录失败次数并锁定用户
  7. 门禁布线系统常见错误详解
  8. ERP系统与PLC数据对接方法
  9. v2ray.com/core/proxy/vmess/outbound: failed to find an available destination
  10. 激光三角测量法在工业视觉检测上的应用