跳到主要内容

PGliteClient

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:77

事件调度器 提供类型安全的事件添加、移除和分发功能

Example

// 定义事件类型
interface MyEvents {
'click': { x: number; y: number };
'change': { value: string };
}

// 创建事件调度器
class MyEventDispatcher extends EventDispatcher<MyEvents> {}

// 使用事件调度器
const dispatcher = new MyEventDispatcher();
dispatcher.addEventListener('click', (data) => {
console.log(`Click at ${data.x}, ${data.y}`);
});
dispatcher.dispatchEvent('click', { x: 10, y: 20 });

Extends

Implements

Constructors

Constructor

new PGliteClient(): PGliteClient;

Returns

PGliteClient

Inherited from

EventDispatcher.constructor

Methods

addEventListener()

addEventListener<T>(type, listener): void;

Defined in: packages/utils/dist/tools/event.d.ts:58

添加事件监听器

Type Parameters

Type Parameter
T extends keyof PGliteClientEvents

Parameters

ParameterTypeDescription
typeT事件类型
listenerEventListener<PGliteClientEvents[T]>事件监听器函数

Returns

void

Inherited from

EventDispatcher.addEventListener


describeQuery()

describeQuery(query, options?): Promise<DescribeQueryResult>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:121

描述查询

Parameters

ParameterTypeDescription
querystring要描述的查询
options?QueryOptions-

Returns

Promise<DescribeQueryResult>

查询结果类型的描述

Implementation of

IPGliteClient.describeQuery


disconnect()

disconnect(): Promise<void>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:133

Returns

Promise<void>

Implementation of

IPGliteClient.disconnect


dispatchEvent()

dispatchEvent<T>(type, data): void;

Defined in: packages/utils/dist/tools/event.d.ts:77

分发事件

Type Parameters

Type Parameter
T extends keyof PGliteClientEvents

Parameters

ParameterTypeDescription
typeT事件类型
dataPGliteClientEvents[T]事件数据

Returns

void

Inherited from

EventDispatcher.dispatchEvent


exec()

exec(query, options?): Promise<Results[]>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:113

执行 SQL 查询,可以包含多个语句 使用 PostgreSQL 的"简单查询"协议消息

Parameters

ParameterTypeDescription
querystring要执行的查询
options?QueryOptions-

Returns

Promise<Results[]>

查询的结果

Implementation of

IPGliteClient.exec


hasEventListener()

hasEventListener<T>(type, listener): boolean;

Defined in: packages/utils/dist/tools/event.d.ts:65

检查是否已添加指定的事件监听器

Type Parameters

Type Parameter
T extends keyof PGliteClientEvents

Parameters

ParameterTypeDescription
typeT事件类型
listenerEventListener<PGliteClientEvents[T]>事件监听器函数

Returns

boolean

如果已添加监听器则返回true,否则返回false

Inherited from

EventDispatcher.hasEventListener


init()

init(dbName, options): Promise<void>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:84

Parameters

ParameterType
dbNamestring
optionsPGliteClientOptions

Returns

Promise<void>

Implementation of

IPGliteClient.init


query()

query<T>(
query,
params?,
options?): Promise<Results<T>>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:117

执行单个 SQL 语句 使用 PostgreSQL 的"扩展查询"协议消息

Type Parameters

Type Parameter
T

Parameters

ParameterTypeDescription
querystring要执行的查询语句
params?any[]查询的可选参数
options?QueryOptions-

Returns

Promise<Results<T>>

查询的结果

Implementation of

IPGliteClient.query


removeAllEventListeners()

removeAllEventListeners(): void;

Defined in: packages/utils/dist/tools/event.d.ts:81

移除所有事件监听器

Returns

void

Inherited from

EventDispatcher.removeAllEventListeners


removeEventListener()

removeEventListener<T>(type, listener): void;

Defined in: packages/utils/dist/tools/event.d.ts:71

移除事件监听器

Type Parameters

Type Parameter
T extends keyof PGliteClientEvents

Parameters

ParameterTypeDescription
typeT事件类型
listenerEventListener<PGliteClientEvents[T]>事件监听器函数

Returns

void

Inherited from

EventDispatcher.removeEventListener


runExclusive()

runExclusive<T>(fn): Promise<T>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:129

独占运行函数,在函数运行期间不允许其他事务或查询 这在使用 execProtocol 方法时特别有用,因为它们不会被阻塞, 也不会阻塞事务和查询使用的锁

Type Parameters

Type Parameter
T

Parameters

ParameterTypeDescription
fn() => Promise<T>要运行的函数

Returns

Promise<T>

函数的结果

Implementation of

IPGliteClient.runExclusive


sql()

sql<T>(sqlStrings, ...params): Promise<Results<T>>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:109

执行单个 SQL 语句,类似于 query,但使用模板语句,其中模板值将被视为参数

使用 PostgreSQL 的"扩展查询"协议消息

Type Parameters

Type Parameter
T

Parameters

ParameterType
sqlStringsTemplateStringsArray
...paramsany[]

Returns

Promise<Results<T>>

查询的结果

Example

const results = await db.sql`SELECT * FROM ${identifier`foo`} WHERE id = ${id}`

Implementation of

IPGliteClient.sql


transaction()

transaction<T>(callback): Promise<T>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:125

执行事务

Type Parameters

Type Parameter
T

Parameters

ParameterTypeDescription
callback(tx) => Promise<T>接收事务对象的回调函数

Returns

Promise<T>

事务的结果

Implementation of

IPGliteClient.transaction


version()

version(): Promise<string>;

Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:137

Returns

Promise<string>

Implementation of

IPGliteClient.version