当前位置:   article > 正文

一文读懂Uniapp的setStorage、setStorageSync、getStorage以及getStorageSync(附Demo)_uni.setstorage

uni.setstorage

前言

将登陆信息存储在本地,后续将相关信息应用在其他的业务
这类功能需要使用到这几个函数

以及 uni.setStorage 和 uni.getStorage 以及 uni.setStorageSync 和 uni.getStorageSync 这两对函数都用于在本地存储数据,但它们之间有一些关键的差异

1. uni.setStorage 和 uni.getStorage

  • uni.setStorage({key, data, success, fail, complete}):将数据异步存储到本地缓存中,可提供成功、失败和完成时的回调函数
  • uni.getStorage({key, success, fail, complete}):从本地缓存中异步获取数据,可提供成功、失败和完成时的回调函数
uni.setStorage({
  key: 'key',
  data: 'value',
  success: function () {
    console.log('数据存储成功');
  },
  fail: function (error) {
    console.log('数据存储失败:', error);
  }
});

// 获取数据
uni.getStorage({
  key: 'key',
  success: function (res) {
    console.log('获取数据成功:', res.data);
  },
  fail: function (error) {
    console.log('获取数据失败:', error);
  }
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

2. uni.setStorageSync 和 uni.getStorageSync

  • uni.setStorageSync(key, data):将数据同步存储到本地缓存中,即时执行,没有回调函数
  • uni.getStorageSync(key):从本地缓存中同步获取数据,即时执行,没有回调函数
// 存储数据
uni.setStorageSync('key', 'value');

// 获取数据
let data = uni.getStorageSync('key');
  • 1
  • 2
  • 3
  • 4
  • 5

3. 比较

同步vs异步回调函数适用场景
1.uni.setStorageSync 和 uni.getStorageSync 是同步方法,会阻塞后续代码的执行,直到操作完成

2.uni.setStorage 和 uni.getStorage 是异步方法,不会阻塞后续代码的执行,而是通过回调函数来处理操作结果
uni.setStorage 和 uni.getStorage 可以提供成功、失败和完成时的回调函数,而同步方法不支持回调函数1.同步方法适用于简单的数据存取,不涉及复杂的异步处理

2.异步方法适用于需要在数据存取完成后执行额外逻辑或需要处理大量数据时

总体Demo:

// 同步存储和获取数据
uni.setStorageSync('syncKey', 'syncValue');
let syncData = uni.getStorageSync('syncKey');
console.log('同步存储和获取数据:', syncData);

// 异步存储和获取数据
uni.setStorage({
  key: 'asyncKey',
  data: 'asyncValue',
  success: function () {
    uni.getStorage({
      key: 'asyncKey',
      success: function (res) {
        console.log('异步存储和获取数据:', res.data);
      },
      fail: function (error) {
        console.log('获取数据失败:', error);
      }
    });
  },
  fail: function (error) {
    console.log('存储数据失败:', error);
  }
});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/641649
推荐阅读
相关标签
  

闽ICP备14008679号