# tap.setStorage(Object object)

以 Promise 风格调用:支持

# 功能描述

数据将被保存到本地缓存的指定键名(key)中,若该键已存在则会覆盖原有内容。存储的数据将长期保留,除非用户手动删除或系统因空间不足自动清理。每个键名对应的数据最大容量为1MB,所有缓存数据总容量最大为10MB。

# 参数

# Object object

属性类型默认值必填说明
keystring本地缓存中指定的 key
dataany需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。
encryptBooleanfalse是否开启加密存储。只有异步的 setStorage 接口支持开启加密存储。开启后,将会对 data 使用 AES128 加密,接口回调耗时将会增加。若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true。此外,由于加密后的数据会比原始数据膨胀1.4倍,因此开启 encrypt 的情况下,单个 key 允许存储的最大数据长度为 0.7MB,所有数据存储上限为 7.1MB
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

# 示例代码

tap.setStorage({
  key:"key",
  data:"value"
})


// 开启加密存储
tap.setStorage({
  key: "key",
  data: "value",
  encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
  success() {
    tap.getStorage({
      key: "key",
      encrypt: true, // 若开启加密存储,setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
      success(res) {
        console.log(res.data)
      }
    })
  }
})