Interface: Datastore
CloudControl Pro 9 Docs / datastore / Datastore
Interface: Datastore
datastore.Datastore
本地存储对象,用createDatastore方法创建。
Table of contents
Methods
Methods
clear
▸ clear(): Promise<void>
异步删除当前本地存储以及它的全部数据。此过程是异步的,返回一个Promise,当Promise resolve时表示操作完成。
Returns
Promise<void>
clearSync
▸ clearSync(): void
同步删除当前本地存储以及它的全部数据。大多数情况下不需要使用同步方法,使用异步的clear方法即可,尤其是在UI线程中。
Returns
void
contains
▸ contains(key): Promise<boolean>
判断该本地存储是否包含键值为key的数据并返回Promise,若包含是则该Promise的值为true,否则为false。
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
Returns
Promise<boolean>
是否包含该键值的Promise
containsSync
▸ containsSync(key): boolean
判断该本地存储是否包含键值为key的数据,若包含是则true,否则为false。
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
Returns
boolean
是否包含该键值
edit
▸ edit(block): Promise<void>
批量编辑数据。
Example
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);
Parameters
| Name | Type |
|---|---|
block |
(editor: DatastoreEditor) => void |
Returns
Promise<void>
editSync
▸ editSync(block): void
同步批量编辑数据。
Parameters
| Name | Type |
|---|---|
block |
(editor: DatastoreEditor) => void |
Returns
void
get
▸ get<T>(key): Promise<undefined | T>
从本地存储中异步获取键值为key的数据并返回Promise。
如果该存储中不包含该数据,这时若指定了默认值参数则返回默认值,否则返回undefined。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
Returns
Promise<undefined | T>
getSync
▸ getSync<T>(key): undefined | T
从本地存储中同步获取键值为key的数据并返回。大多数情况下不需要使用同步方法,使用异步的get方法即可,尤其是在UI线程中。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
Returns
undefined | T
remove
▸ remove<T>(key): Promise<undefined | T>
异步移除键值为key的数据,并返回被移除的值的Promise。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
要移除的值的键 |
Returns
Promise<undefined | T>
被移除的值的Promise,若本身key没有对应的数据,则会得到undefined(的Promise)。
removeSync
▸ removeSync<T>(key): undefined | T
同步移除键值为key的数据,并返回移除的值。大多数情况下不需要使用同步方法,使用异步的remove方法即可,尤其是在UI线程中。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
要移除的值的键 |
Returns
undefined | T
被移除的值,若本身key没有对应的数据,则返回undefined。
set
▸ set<T>(key, value): Promise<void>
把键值对key和value保存到本地存储中。此过程是异步的,返回一个Promise,当Promise resolve时表示操作完成。
存储的过程实际上是使用JSON.stringify()把value转换为字符串再保存,因此value必须是可JSON化的才能被接受。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
value |
T |
值 |
Returns
Promise<void>
setSync
▸ setSync<T>(key, value): void
把键值对key和value同步保存到本地存储中。大多数情况下不需要使用同步方法,使用异步的set方法即可,尤其是在UI线程中。
存储的过程实际上是使用JSON.stringify()把value转换为字符串再保存,因此value必须是可JSON化的才能被接受。
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Description |
|---|---|---|
key |
string |
键值 |
value |
T |
值 |
Returns
void
