1.3.2.1 QN.localstore

优质
小牛编辑
125浏览
2023-12-01

本地的持久化存储,有效范围为整个插件。

1.1. API 调用

1.1.1. QN.localstore.set(options)

存储数据

API 调用入参

参数名类型是否可选默认值含义
optionsObject选项
options.queryObject需要存储的数据对象,key/value 的形式,支持多个
options.successFunctionoptional调用成功的回调函数
options.errorFunctionoptional调用失败的回调函数

API 响应结果

参数名类型是否必须返回含义
resultObject响应对象
result.codeString错误码,成功为 QAP_SUCCESS;失败为其他
result.msgString错误信息

调用示例

QN.localstore.set({
    query: {
        name: '张三',
        age: 18,
        data: {x: 1, y: 2},
    }
}).then(result => {
    console.log(result);
}, error => {
    console.log(error);
});

QN.localstore.set({
    query: {
        name: '张三',
        age: 18,
        data: {x: 1, y: 2},
    },
    success(result) {
        console.log(result);
    },
    error(error) {
        console.log(error);
    }
});

1.1.2. QN.localstore.get(options)

查询数据

API 调用入参

参数名类型是否可选默认值含义
optionsObject选项
options.queryObject请求参数
options.query.keyString Array存储的 key 或 以 key 组成的数组
options.successFunctionoptional调用成功的回调函数
options.errorFunctionoptional调用失败的回调函数

API 响应结果

参数名类型是否必须返回含义
resultObject响应对象
result.codeString错误码,成功为 QAP_SUCCESS;失败为其他
result.msgString错误信息
result.dataObject获取到的数据,格式为 key value,如果某个 key 未取到值,则 data 中将不包含该 key

调用示例

// 获取一个 key 的数据
QN.localstore.get({
    query: {
        key: 'name'
    }
}).then(result => {
    console.log(result);
}, error => {
    console.log(error);
});

QN.localstore.get({
    query: {
        key: 'name'
    },
    success(result) {
        console.log(result);
    },
    error(error) {
        console.log(error);
    }
});
// 获取多个 key 的数据
QN.localstore.get({
    query: {
        key: ['name', 'age', 'data', 'job']
    }
}).then(result => {
    console.log(result);
    /**
     * // `job` 这个字段没有值,`data` 中将不包含 `job` 字段
     * {
     *   errorCode: 0,
     *   errorMsg: '',
     *   data: {
     *      name: '张三',
     *      age: '18',
     *      data: {x: 1, y: 2},
     *      job: null  // 如果存储中没有数据,则返回null
     *   }
     * }
     */
}, error => {
    console.log(error);
});

1.1.3. QN.localstore.remove(options)

删除数据

API 调用入参

参数名类型是否可选默认值含义
optionsObject选项
options.queryObject请求参数
options.query.keyString Array存储的 key 或 以 key 组成的数组
options.successFunctionoptional调用成功的回调函数
options.errorFunctionoptional调用失败的回调函数

API 响应结果

参数名类型是否必须返回含义
resultObject响应对象
result.codeString错误码,成功为 QAP_SUCCESS;失败为其他
result.msgString错误信息

调用示例

// 删除一个 key 的数据
QN.localstore.remove({
    query: {
        key: 'name'
    }
}).then(result => {
    console.log(result);
}, error => {
    console.log(error);
});

QN.localstore.remove({
    query: {
        key: 'name'
    },
    success(result) {
        console.log(result);
    },
    error(error) {
        console.log(error);
    }
});
// 删除多个 key 的数据
QN.localstore.remove({
    query: {
        key: ['name', 'age', 'data', 'job']
    }
}).then(result => {
    console.log(result);
}, error => {
    console.log(error);
});

1.1.4. QN.localstore.clear(options)

清除数据

API 调用入参

参数名类型是否可选默认值含义
optionsObjectoptional选项
options.successFunctionoptional调用成功的回调函数
options.errorFunctionoptional调用失败的回调函数

API 响应结果

参数名类型是否必须返回含义
resultObject响应对象
result.codeString错误码,成功为 QAP_SUCCESS;失败为其他
result.msgString错误信息

调用示例

QN.localstore.clear()
.then(result => {
    console.log(result);
}, error => {
    console.log(error);
});

QN.localstore.clear({
    success(result) {
        console.log(result);
    },
    error(error) {
        console.log(error);
    }
});