uniapp 本地存储的方式

1. uniapp 本地存储的方式

  在uniapp开发中,本地存储是一个常见的需求。本地存储可以帮助我们在客户端保存和管理数据,以便在应用程序中进行持久化存储。本文将介绍uniapp中本地存储的几种方式,以及相关的代码示例。

1.1. 介绍

  在移动应用开发中,我们经常需要将一些数据保存在客户端,比如用户的个人设置、应用的配置信息等。uniapp提供了多种本地存储的方式,包括localStorage、sessionStorage、uni.setStorageSync和uni.setStorage等。接下来,我们将逐一介绍这些方式,并给出相应的代码示例。
  uniapp本地存储的几种方式
(1)localStorage:使用浏览器提供的localStorage API进行本地存储,可以存储字符串类型的数据,并且在同一域名下的所有页面共享。
(2)sessionStorage:与localStorage类似,但是数据只在当前会话期间有效,一旦会话结束就会被清除。
(3)uni.setStorageSync和uni.getStorageSync:uniapp提供的API,可以将数据存储在本地文件中,可以存储各种类型的数据,包括对象和数组。
(4)uni.setStorage和uni.getStorage:与uni.setStorageSync和uni.getStorageSync类似,但是使用异步方式进行存储和获取数据。
  这些方式可以根据实际需求选择合适的方式进行本地存储。

1.2. 使用本地存储的好处

  uniapp使用本地存储的好处包括:
(1)数据持久化:本地存储可以将数据保存在用户设备上,即使用户关闭应用或重启设备,数据仍然可以被保留。
(2)减少网络请求:通过本地存储可以缓存一些常用的数据,减少对服务器的请求,提高应用的性能和加载速度。
(3)离线访问:本地存储可以使应用在没有网络连接的情况下仍然能够访问一些数据,提高用户体验。

1.3. 方法

1.3.1. localStorage

  localStorage是HTML5标准中定义的用于客户端存储的API。在uniapp中,我们可以直接使用localStorage来进行本地存储。
(1)说明

// 将数据存储到localStorage中
localStorage.setItem('key', 'value');
// 从localStorage中获取数据
var value = localStorage.getItem('key');

(2)实例

 /*** localStorage数据存储*/
localStorageData: function () {// 将数据存储到localStorage中localStorage.setItem('SP_NAME', 'zzs');// 从localStorage中获取数据var value = localStorage.getItem('SP_NAME');console.log("从localStorage中获取数据:",value)
},

在这里插入图片描述

1.3.2. sessionStorage

  sessionStorage也是HTML5标准中定义的用于客户端存储的API,它与localStorage的区别在于数据只在当前会话期间有效。在uniapp中,我们同样可以直接使用sessionStorage来进行本地存储。
(1)说明

// 将数据存储到sessionStorage中
sessionStorage.setItem('key', 'value');
// 从sessionStorage中获取数据
var value = sessionStorage.getItem('key');

(2)实例

 /*** sessionStorage数据存储*/
sessionStorageData: function () {// 将数据存储到sessionStorage中sessionStorage.setItem('SP_NAME2', 'zzs2');// 从sessionStorage中获取数据var value = sessionStorage.getItem('SP_NAME2');console.log("从sessionStorage中获取数据:",value)
},

在这里插入图片描述

1.3.3. uni.setStorageSync

  uni.setStorageSync是uniapp提供的本地存储方法之一,它可以将数据同步存储到本地。
(1)说明

// 将数据存储到本地
uni.setStorageSync('key', 'value');
// 从本地获取数据
var value = uni.getStorageSync('key');

(2)实例

/**
* setStorageSync数据存储
*/
setStorageSyncData: function () {// 将数据存储到本地uni.setStorageSync('SP_NAME3', 'zzs3');// 从本地获取数据var value = uni.getStorageSync('SP_NAME3');console.log("从setStorageSyncData中获取数据:", value)
},

在这里插入图片描述

1.3.4. uni.setStorage

  uni.setStorage是uniapp提供的另一种本地存储方法,它可以将数据异步存储到本地。
(1)说明

// 将数据异步存储到本地
uni.setStorage({key: 'key',data: 'value',success: function () {// 存储成功的逻辑}
});
// 从本地异步获取数据
uni.getStorage({key: 'key',success: function (res) {var value = res.data;// 获取数据成功的逻辑}
});

(2)实例

/**
* setStorage数据存储
*/
setStorageData: function () {// 将数据异步存储到本地uni.setStorage({key: 'SP_NAME4',data: 'zzs4',success: function () {// 存储成功的逻辑}});// 从本地异步获取数据uni.getStorage({key: 'SP_NAME4',success: function (res) {var value = res.data;// 获取数据成功的逻辑console.log("从setStorage中获取数据:", value)}});
},

在这里插入图片描述

1.4. 完整代码

<template><view></view>
</template><script>export default {data() {return {}},onLoad: function () {var that = this;//localStorage数据存储that.localStorageData()//sessionStorage数据存储that.sessionStorageData()//setStorageSync数据存储that.setStorageSyncData()//setStorage数据存储that.setStorageData()},methods: {/*** localStorage数据存储*/localStorageData: function () {// 将数据存储到localStorage中localStorage.setItem('SP_NAME', 'zzs');// 从localStorage中获取数据var value = localStorage.getItem('SP_NAME');console.log("从localStorage中获取数据:", value)},/*** sessionStorage数据存储*/sessionStorageData: function () {// 将数据存储到sessionStorage中sessionStorage.setItem('SP_NAME2', 'zzs2');var value = sessionStorage.getItem('SP_NAME2');console.log("从sessionStorage中获取数据:", value)},/*** setStorageSync数据存储*/setStorageSyncData: function () {// 将数据存储到本地uni.setStorageSync('SP_NAME3', 'zzs3');// 从本地获取数据var value = uni.getStorageSync('SP_NAME3');console.log("从setStorageSync中获取数据:", value)},/*** setStorage数据存储*/setStorageData: function () {// 将数据异步存储到本地uni.setStorage({key: 'SP_NAME4',data: 'zzs4',success: function () {// 存储成功的逻辑}});// 从本地异步获取数据uni.getStorage({key: 'SP_NAME4',success: function (res) {var value = res.data;// 获取数据成功的逻辑console.log("从setStorage中获取数据:", value)}});},}}
</script>
<style>
</style>

在这里插入图片描述

1.5. 结论

  本文介绍了uniapp中本地存储的几种方式,包括localStorage、sessionStorage、uni.setStorageSync和uni.setStorage。通过这些方式,我们可以方便地在uniapp应用中进行本地数据的存储和管理。根据具体的需求和场景,我们可以选择合适的方式来进行本地存储操作。希望本文能够帮助读者更好地理解uniapp中本地存储的相关知识,并在实际开发中得到应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/457171.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CRM的线索管理功能是什么?如何帮助企业实现业绩增长?

随着“以客户为中心”观念的逐渐普及&#xff0c;销售团队的客户比过去更复杂&#xff0c;交易周期更久&#xff0c;竞争也更激烈。假如没有明确的销售计划&#xff0c;团队可能陷入混乱&#xff0c;最后导致客户&公司之间的负面结果。在这种情况下&#xff0c;人工智能驱动…

算法提升——LeetCode123场双周赛总结

周赛题目 三角形类型 II 给你一个下标从0开始长度为3的整数数组nums&#xff0c;需要用它们来构造三角形。 如果一个三角形的所有边长度相等&#xff0c;那么这个三角形称为equilateral。 如果一个三角形恰好有两条边长度相等&#xff0c;那么这个三角形称为isosceles。 如…

华为机考入门python3--(11)牛客11-数字颠倒

分类&#xff1a;字符串 知识点&#xff1a; int转字符串 str int(num) 对字符串进行逆序 my_str str[::-1] 题目来自【牛客】 def reverse_integer(n): # 将整数转换为字符串 str_n str(n) # 使用[::-1]来反转字符串 reversed_str str_n[::-1] return reversed…

蓝桥杯---分小组

9名运动员参加比赛,需要分3组进行预赛. 有哪些分组的方案呢? 我们标记运动员为 A,B,C .... I 下面的程序列出了所有的分组方法。 该程序的正常输出为:

蓝桥杯嵌入式第8届真题(完成) STM32G431

蓝桥杯嵌入式第8届真题(完成) STM32G431 题目 分析和代码 对比第六届和第七届&#xff0c;这届的题目在逻辑思维上确实要麻烦不少&#xff0c;可以从题目看出&#xff0c;这届题目对时间顺序的要求很严格&#xff0c;所以就可以使用状态机的思想来编程&#xff0c;拿到类似题…

C#中实现串口通讯(使用SerialPort类)

仅作自己学习使用 1 准备部份 需要两个调试软件commix和Virtual Serial Port Driver&#xff0c;分别用于监视串口和创造虚拟串口。 第一个软件是这样的&#xff1a; 资源在这里&#xff1a;免费下载&#xff1a;Commix 也可以前往官网下载&#xff1a;Bwsensing— Attitude…

华为OD机试真题C卷-篇3

文章目录 查找一个有向网络的头节点和尾节点幼儿园篮球游戏 查找一个有向网络的头节点和尾节点 在一个有向图中&#xff0c;有向边用两个整数表示&#xff0c;第一个整数表示起始节点&#xff0c;第二个整数表示终止节点&#xff1b;图中只有一个头节点&#xff0c;一个或者多…

腾讯云游戏服务器配置有哪些?

2024年更新腾讯云游戏联机服务器配置价格表&#xff0c;可用于搭建幻兽帕鲁、雾锁王国等游戏服务器&#xff0c;游戏服务器配置可选4核16G12M、8核32G22M、4核32G10M、16核64G35M、4核16G14M等配置&#xff0c;可以选择轻量应用服务器和云服务器CVM内存型MA3或标准型SA2实例&am…

Java实现用户画像活动推荐系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 兴趣标签模块2.3 活动档案模块2.4 活动报名模块2.5 活动留言模块 三、系统设计3.1 用例设计3.2 业务流程设计3.3 数据流程设计3.4 E-R图设计 四、系统展示五、核心代码5.1 查询兴趣标签5.2 查询活动推荐…

JavaEE作业-实验二

目录 1 实验内容 2 实验要求 3 思路 4 核心代码 5 实验结果 1 实验内容 实现两个整数求和的WEB程序 2 实验要求 ①采用SpringMVC框架实现 ②数据传送到WEB界面采用JSON方式 3 思路 ①创建一个SpringMVC项目&#xff0c;配置好相关的依赖和配置文件。 ②创建一个Con…

kafka 文件存储机制

文章目录 1. 思考四个问题&#xff1a;1.1 topic中partition存储分布&#xff1a;1.2 partiton中文件存储方式&#xff1a;1.3 partiton中segment文件存储结构&#xff1a;1.4 在partition中如何通过offset查找message: 2. kafka日志存储参数配置 Topic是逻辑上的概念&#xff…

thinkphp获取用户最新的阅读记录,按书籍id去重,返回最新的阅读记录

通过uid查询data_user_zhangjie的记录 去重shuji_id 获取createtime最新的一条数据 //获取用户章节记录public function getUserZhangjieList(){$uid = input(uid);if(empty