接口: Datastore 
更新: 2025/7/20 字数: 0 字 时长: 0 分钟
datastore.Datastore
本地存储对象,用createDatastore方法创建。
目录 
方法 
方法 
clear 
- clear(): 
Promise<void> 
异步删除当前本地存储以及它的全部数据。此过程是异步的,返回一个Promise,当Promise resolve时表示操作完成。
返回值
Promise<void>
clearSync 
- clearSync(): 
void 
同步删除当前本地存储以及它的全部数据。大多数情况下不需要使用同步方法,使用异步的clear方法即可,尤其是在UI线程中。
返回值
void
contains 
- contains(
key):Promise<boolean> 
判断该本地存储是否包含键值为key的数据并返回Promise,若包含是则该Promise的值为true,否则为false。
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
返回值
Promise<boolean>
是否包含该键值的Promise
containsSync 
- containsSync(
key):boolean 
判断该本地存储是否包含键值为key的数据,若包含是则true,否则为false。
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
返回值
boolean
是否包含该键值
edit 
- edit(
block):Promise<void> 
批量编辑数据。
示例
const { createDatastore } = require('datastore');
// 创建本地存储,其名称为example.test
const datastore = createDatastore('example.test');
async function main() {
    // 批量写入多个值,相比依次写入效率更高
    await datastore.edit(editor => {
        editor.set('boolKey', true)
            .set('arrayKey', [1, '2', false])
            .remove('versions');
    });
}
main().catch(console.error);参数
| 名称 | 类型 | 
|---|---|
block | (editor: DatastoreEditor) => void | 
返回值
Promise<void>
editSync 
- editSync(
block):void 
同步批量编辑数据。
参数
| 名称 | 类型 | 
|---|---|
block | (editor: DatastoreEditor) => void | 
返回值
void
get 
- get<
T>(key):Promise<undefined|T> 
从本地存储中异步获取键值为key的数据并返回Promise。
如果该存储中不包含该数据,这时若指定了默认值参数则返回默认值,否则返回undefined。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
返回值
Promise<undefined | T>
getSync 
- getSync<
T>(key):undefined|T 
从本地存储中同步获取键值为key的数据并返回。大多数情况下不需要使用同步方法,使用异步的get方法即可,尤其是在UI线程中。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
返回值
undefined | T
remove 
- remove<
T>(key):Promise<undefined|T> 
异步移除键值为key的数据,并返回被移除的值的Promise。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 要移除的值的键 | 
返回值
Promise<undefined | T>
被移除的值的Promise,若本身key没有对应的数据,则会得到undefined(的Promise)。
removeSync 
- removeSync<
T>(key):undefined|T 
同步移除键值为key的数据,并返回移除的值。大多数情况下不需要使用同步方法,使用异步的remove方法即可,尤其是在UI线程中。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 要移除的值的键 | 
返回值
undefined | T
被移除的值,若本身key没有对应的数据,则返回undefined。
set 
- set<
T>(key,value):Promise<void> 
把键值对key和value保存到本地存储中。此过程是异步的,返回一个Promise,当Promise resolve时表示操作完成。
存储的过程实际上是使用JSON.stringify()把value转换为字符串再保存,因此value必须是可JSON化的才能被接受。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
value | T | 值 | 
返回值
Promise<void>
setSync 
- setSync<
T>(key,value):void 
把键值对key和value同步保存到本地存储中。大多数情况下不需要使用同步方法,使用异步的set方法即可,尤其是在UI线程中。
存储的过程实际上是使用JSON.stringify()把value转换为字符串再保存,因此value必须是可JSON化的才能被接受。
类型参数
| 名称 | 
|---|
T | 
参数
| 名称 | 类型 | 描述 | 
|---|---|---|
key | string | 键值 | 
value | T | 值 | 
返回值
void
