uniapp 异步储存本地
时间: 2025-01-10 18:38:59 浏览: 33
UniApp 实现异步本地存储
在 UniApp 开发中,为了满足不同场景下的需求,提供了多种方式进行本地存储。对于需要处理大量数据或希望提升用户体验的应用程序来说,采用异步方式执行本地存储操作是非常重要的。
使用 uni.setStorage
进行异步存储
uni.setStorage
是一种用于设置本地缓存指定 key 的方法,支持异步调用。此接口会尝试将数据保存至设备的本地存储空间内,在成功完成之后通过回调函数返回结果[^1]。
function saveDataAsync(key, value) {
uni.setStorage({
key: key,
data: value,
success(res) {
console.log('数据已成功保存');
},
fail(err) {
console.error('保存失败:', err);
}
});
}
上述代码展示了如何定义一个名为 saveDataAsync
函数来实现简单的键值对形式的数据异步存储功能。当调用该函数并传入相应的参数时,它将会把给定的数据项按照指定名称存储起来,并且会在完成后打印一条消息表示操作已完成;如果遇到错误,则记录下具体的异常信息。
利用 Promise 封装更灵活的操作
为了让开发者能够更加方便地利用 JavaScript 的现代特性编写简洁高效的代码,可以考虑基于原生 API 对其进一步封装成 promise 形式的工具类:
const storageUtil = (() => {
function setItem(key, item) {
return new Promise((resolve, reject) => {
try {
uni.setStorage({key:key,data:item});
resolve();
} catch (error){
reject(error);
}
});
}
async function exampleUsage() {
await setItem('exampleKey', 'This is an example.');
console.log('Example usage completed successfully!');
}
return {setItem, exampleUsage};
})();
这段代码创建了一个闭包结构中的对象 storageUtil
,其中包含了两个主要成员:setItem
和 exampleUsage
.前者接受一对键值作为输入并将它们异步地写入到本地存储;后者则提供了一种示范性的应用场景展示如何使用这些辅助函数[^2].
相关推荐


















