微信小程序怎样进行本地存储的读、写、删、清?同步及异步两种类型

微信小程序提供了本地存储的API,允许开发者在页面上保存用户数据,以便在用户的会话或跨会话中持久化数据。本地存储支持同步和异步两种方式来进行读、写、删、清操作。

同步方式

微信小程序从基础库版本 2.10.0 开始,逐步废弃了同步的本地存储API(如wx.setStorageSyncwx.getStorageSync等),因为这些同步API会阻塞当前线程,可能导致页面卡顿。但了解它们仍然有助于理解概念。

  • 写(存)wx.setStorageSync(key, data)
  • wx.getStorageSync(key)
  • wx.removeStorageSync(key)
  • wx.clearStorageSync()

异步方式

异步方式是目前推荐的存储方式,因为它们不会阻塞主线程,用户体验更好。

  • 写(存)wx.setStorage(Object object)

    复制代码
    wx.setStorage({  
      key: 'key',  
      data: 'value',  
      success(res) {  
        console.log('存储成功');  
      },  
      fail(err) {  
        console.error('存储失败', err);  
      }  
    });
  • wx.getStorage(Object object)

    复制代码
    wx.getStorage({  
      key: 'key',  
      success(res) {  
        console.log('读取成功', res.data);  
      },  
      fail(err) {  
        console.error('读取失败', err);  
      }  
    });
  • wx.removeStorage(Object object)

    复制代码
    wx.removeStorage({  
      key: 'key',  
      success(res) {  
        console.log('删除成功');  
      },  
      fail(err) {  
        console.error('删除失败', err);  
      }  
    });
  • wx.clearStorage(Object object)

    复制代码
    wx.clearStorage({  
      success(res) {  
        console.log('清除成功');  
      },  
      fail(err) {  
        console.error('清除失败', err);  
      }  
    });

注意事项

  • 本地存储的大小限制为每个小程序10MB。
  • 本地存储的数据是保存在用户的设备上的,所以数据不会跨设备同步。
  • 敏感信息不应存储在本地存储中,因为可能会被用户或其他应用访问。
  • 在进行写操作时,如果key已存在,则会被覆盖。
  • 异步方法中的successfail回调是可选的,但推荐总是处理可能的错误情况。

总结

虽然微信小程序提供了同步和异步两种方式进行本地存储的读、写、删、清操作,但推荐使用异步方式,以避免阻塞主线程,提升用户体验。同时,开发者应注意本地存储的限制和安全性问题。

相关推荐
じòぴé南冸じょうげん2 小时前
小程序的project.private.config.json是无依赖文件,那可以删除吗?
前端·小程序·json
2501_916013743 小时前
HTTPS 抓包难点分析,从端口到工具的实战应对
网络协议·http·ios·小程序·https·uni-app·iphone
2501_915918415 小时前
uni-app 项目 iOS 上架效率优化 从工具选择到流程改进的实战经验
android·ios·小程序·uni-app·cocoa·iphone·webview
00后程序员张6 小时前
如何在不同 iOS 设备上测试和上架 uni-app 应用 实战全流程解析
android·ios·小程序·https·uni-app·iphone·webview
微三云-轩6 小时前
区块链:重构企业数字化的信任核心与创新动力
人工智能·小程序·区块链·生活·我店
阿隆_趣编程8 小时前
为了方便相亲,我用AI写了一款小程序
前端·javascript·微信小程序
2501_915918411 天前
iOS 开发全流程实战 基于 uni-app 的 iOS 应用开发、打包、测试与上架流程详解
android·ios·小程序·https·uni-app·iphone·webview
黑马源码库miui520861 天前
JAVA同城打车小程序APP打车顺风车滴滴车跑腿源码微信小程序打车源码
java·微信·微信小程序·小程序·uni-app
一口十个小甜虾1 天前
微信小程序体验版,当打开调试模式正常访问,关闭之后无法访问
微信小程序·小程序
悟空码字1 天前
微信开放平台第三方平台,可以管理多个微信小程序
微信·小程序·开放平台