uniapp本地存储详解_uni

uni.setStorageSync(KEY,DATA)

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

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

uni.getStorageSync(KEY)

从本地缓存中同步获取指定 key 对应的内容。
在这里插入图片描述

示例代码

try {
	const value = uni.getStorageSync('storage\_key');
	if (value) {
		console.log(value);
	}
} catch (e) {
	// error
}

3. 获取存储信息uni.getStorageInfo与uni.getStorageInfoSync
uni.getStorageInfoSync()

同步获取当前 storage 的相关信息。
在这里插入图片描述

示例

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

uni.getStorageInfo(OBJECT)

异步获取当前 storage 的相关信息
在这里插入图片描述

示例代码

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

4. 移除 uni.removeStorage与uni.removeStorageSync
uni.removeStorage(OBJECT)

从本地缓存中异步移除指定 key。
在这里插入图片描述

代码示例

uni.removeStorage({
	key: 'storage\_key',
	success: function (res) {
		console.log('success');
	}
}); 

uni.removeStorageSync(KEY)

从本地缓存中同步移除指定 key。
在这里插入图片描述

示例代码

try {
	uni.removeStorageSync('storage\_key');
} catch (e) {
	// error
} 

uni.clearStorage()

清理本地数据缓存。

示例

uni.clearStorage();

uni.clearStorageSync()

同步清理本地数据缓存。

示例

try {
	uni.clearStorageSync();
} catch (e) {
	// error
}

注意事项

  • uni.setStorageSync和uni.getStorageSync都是同步方法,调用后会阻塞线程,所以在使用时需要注意不要在UI线程中频繁调用这些方法,以免影响应用性能。
  • uni.setStorageSync保存的数据大小不能超过10MB。
  • uni.setStorageSync保存的数据只能在当前小程序中访问,不能跨小程序或跨设备访问。
  • 如果要保存的数据较大或者需要长期保存,建议使用uni.setStorage和uni.getStorage方法,这两个方法是异步方法,不会阻塞线程。在实现上,它们可能会使用文件系统缓存等技术来提高读写效率。
  • H5端为localStorage,浏览器限制5M大小,是缓存概念,可能会被清理
  • App端为原生的plus.storage,无大小限制,不是缓存,是持久化的
  • 各个小程序端为其自带的storage api,数据存储生命周期跟小程序本身一致,即除用户主动删除或 超过一定时间被自动清理,否则数据都一直可用。
  • 微信小程序单个 key 允许存储的最大数据长度为 1MB,所有数据存储上限为 10MB。
  • 支付宝小程序单条数据转换成字符串后,字符串长度最大200*1024。同一个支付宝用户,同一个小程序缓存总上限为10MB。
  • 百度小程序策略详见、字节跳动小程序策略详见
  • 非App平台清空Storage会导致uni.getSystemInfo获取到的deviceId改变
  • 除此之外,其他数据存储方案:
    H5端还支持websql、indexedDB、sessionStorage
    App端还支持SQLite、IO文件等本地存储方案。

总结

当我们调用对应方法时,uniapp会将数据以键值对的形式存储在本地存储中。具体实现中,uniapp会将键值对转换成字节流,并将字节流写入到设备的存储器中。这个过程涉及到计算机底层存储原理的数据存储和字节对齐。在读取数据时,会根据指定的键,从本地存储中读取相应的数据。根据键的索引或哈希值,定位到存储器中相应的数据块,并读取字节流。然后,将字节流转换为相应的数据类型,供应用程序使用。调用uni.removeStorageSync方法,将指定键的数据从本地存储中移除。计算机会找到相应的数据块,并将其标记为可覆盖的状态,从而释放存储空间。

结语

以上就是uniapp提供的各种本地存储方式及其底层实现机制的简单罗列和使用示例,uniapp的本地存储的逻辑涉及到计算机数据的写入、读取、文件系统管理、磁盘块分配等底层技术。在实际开发中,我们应该根据需求选择合适的方法进行本地存储操作,并尽量减少对本地存储的频繁访问,以提高应用性能。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数HarmonyOS鸿蒙开发工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年HarmonyOS鸿蒙开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上HarmonyOS鸿蒙开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注鸿蒙获取)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新**

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注鸿蒙获取)
[外链图片转存中…(img-FyLyza8v-1712863937311)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 8
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
net use命令是用于连接和断开网络共享资源的Windows命令。以下是net use命令的一些常用选项和用法: 1. 连接共享资源 要连接共享资源,可以使用以下命令: net use [DeviceName] [\\ComputerName\ShareName] [/user:[DomainName\]UserName] [Password] 其中,DeviceName是为共享资源分配的本地驱动器号,\\ComputerName\ShareName是共享资源的网络路径,/user选项用于指定连接所需的用户名和密码。 例如,要将共享资源\\Server\Share连接到本地驱动器Z上,可以使用以下命令: net use Z: \\Server\Share /user:DomainName\UserName Password 2. 断开共享资源 要断开共享资源,可以使用以下命令: net use [DeviceName] /delete 其中,DeviceName是要断开的本地驱动器号。 例如,要断开本地驱动器Z上的共享资源连接,可以使用以下命令: net use Z: /delete 3. 显示当前连接 要显示当前连接的共享资源,可以使用以下命令: net use 该命令将显示当前连接状态、本地驱动器和共享资源的详细信息。 4. 持久连接 要创建持久连接,可以使用以下命令: net use [DeviceName] [\\ComputerName\ShareName] [/user:[DomainName\]UserName] [Password] /persistent:{yes|no} 其中,/persistent选项用于指定连接是否持久。如果设置为yes,则连接将在系统重新启动后保持活动状态。 例如,要创建一个持久连接到共享资源\\Server\Share,可以使用以下命令: net use Z: \\Server\Share /user:DomainName\UserName Password /persistent:yes 以上是net use命令的一些常用选项和用法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值