存储

qh.setStorage

解释:将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容。除非用户主动删除或因存储空间原因被系统清理,否则数据都一直可用。单个 key 允许存储的最大数据长度无限制,没有自动清理存储机制。

方法参数: Object object

object参数说明

参数名类型必填默认值说明
keyString本地缓存中的指定的 key
dataObject/String/Number/Array需要存储的内容
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
  • 在 html 文件中
  1. <div>
  2. <se-button @click="setStorage" type="primary">存储数据</se-button>
  3. <se-button @click="getStorage" type="primary">读取数据</se-button>
  4. <se-button @click="clearStorage">清理数据</se-button>
  5. </div>
  • 在 js 文件中
Page({
    methods: {
        setStorage() {
            qh.setStorage({
                key: 'key',
                data: 'value',
                success: res => {
                    qh.showToast({
                        title: '存储数据成功'
                    });
                },
                fail: err => {
                    qh.showToast({
                        title: '存储数据失败'
                    });
                }
            });
        },

        getStorage() {
            qh.getStorage({
                key: 'key',
                success: res => {
                    qh.showModal({
                        title: '读取数据成功',
                        content: JSON.stringify(res),
                        showCancel: false
                    });
                },
                fail: err => {
                    qh.showToast({
                        title: '读取数据失败'
                    });
                }
            });
        },

        clearStorage() {
            qh.clearStorageSync();
            qh.showToast({
                title: '清除数据成功'
            });
        }
    }
});

qh.setStorageSync

解释:qh.setStorage 的同步版本

方法参数:String key, Object/String data

key参数说明:本地缓存中的指定的 key

data参数说明:需要存储的内容。只支持原生类型、Date、及能够通过JSON.stringify序列化的对象。

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="setStorageSync">setStorageSync</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        setStorageSync() {
            try {
                qh.setStorageSync('key', 'value');
            } catch (e) {
                console.error(e);
            }
        }
    }
});

qh.getStorage

解释:从本地缓存中异步获取指定 key 对应的内容。

方法参数:Object object

object参数说明

参数名类型必填默认值说明
keyString-本地缓存中的指定的 key
successFunction-接口调用成功的回调函数,res = {data: key对应的内容}。
failFunction-接口调用失败的回调函数
completeFunction-接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明

参数类型说明
dataObject/String/Number/Arraykey 对应的内容

qh.getStorageSync

解释:qh.getStorage的同步版本

方法参数: String key

key参数说明: 本地缓存中的指定的 key

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="setStorageSync">setStorageSync</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        getStorageSync() {
            try {
                const result = qh.getStorageSync('key');
                console.log('getStorageSync result:', result);
            } catch (e) {
            }
        }
    }
});

qh.getStorageInfo

解释:异步获取当前 storage 的相关信息。

方法参数:Object object

object参数说明

参数名类型必填默认值说明
successFunction-接口调用成功的回调函数,详见返回参数说明。
failFunction-接口调用失败的回调函数
completeFunction-接口调用结束的回调函数(调用成功、失败都会执行)

success返回参数说明

参数类型说明
keysArray.<string>当前 storage 中所有的 key。
currentSizeNumber当前占用的空间大小, 单位 kB。
limitSizeNumber限制的空间大小,单位 kB。

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="getStorageInfo">getStorageInfo</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        getStorageInfo() {
            qh.getStorageInfo({
                success: function (res) {
                    console.log('getStorageInfo success', res);
                },
                fail: function (err) {
                    console.log('getStorageInfo fail', err);
                }
            });
        }
    }
});

qh.getStorageInfoSync

解释:qh.getStorageInfo的同步版本

方法参数: 无

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="getStorageInfoSync">getStorageInfoSync</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        getStorageInfoSync() {
            try {
                const result = qh.getStorageInfoSync();
                console.log('getStorageInfoSync success', result);
            } catch (err) {
                console.log('getStorageInfoSync fail', err);
            }
        }
    }
});

qh.removeStorage

解释:从本地缓存中异步移除指定 key。

方法参数:Object object

object参数说明

参数名类型必填默认值说明
keyString-本地缓存中的指定的 key
successFunction-接口调用成功的回调函数
failFunction-接口调用失败的回调函数
completeFunction-接口调用结束的回调函数(调用成功、失败都会执行)

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="removeStorage">removeStorage</se-button>
</div
  • 在 js 文件中
Page({
    methods: {
        removeStorage() {
            qh.removeStorage({
                key: 'key',
                success: function (res) {
                    console.log('removeStorage success', res);
                },
                fail: function (err) {
                    console.log('removeStorage fail', err);
                }
            });
        }
    }
});

qh.removeStorageSync

解释:qh.removeStorage的同步版本

方法参数:String key

key参数说明:本地缓存中的指定的 key。

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="removeStorageSync">removeStorageSync</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        removeStorageSync() {
            try {
                qh.removeStorageSync('key');
                console.log('removeStorageSync success');
            } catch (err) {
                console.log('removeStorageSync fail', err);
            }
        }
    }
});

qh.clearStorage

解释:清理本地数据缓存。

方法参数:Object object

object参数说明

参数名类型必填默认值说明
successFunction-接口调用成功的回调函数
failFunction-接口调用失败的回调函数
completeFunction-接口调用结束的回调函数(调用成功、失败都会执行)

示例

  • 在 html 文件中
<div>
    <se-button type="primary" @click="clearStorage">clearStorage</se-button>
</div>
  • 在 js 文件中
Page({
    methods: {
        clearStorage() {
            qh.clearStorage({
                success: function () {
                    console.log('clearStorage success');
                },
                fail: function (err) {
                    console.log('clearStorage fail', err);
                }
            });
        }
    }
});

qh.clearStorageSync

解释:qh.clearStorage的同步版本

方法参数:无

示例

try {
    qh.clearStorageSync();
} catch(e) {
}