跳到主要内容

RxDB

Defined in: packages/rxdb/src/RxDB.ts:85

RxDB 是个单例对象,负责管理插件、适配器、事件以及上下文等全局功能 全局只能创建一个 RxDB 实例,所有 entity 都通过这个实例进行管理 所有 Entity 的 Class 也只能被注册一次

Constructors

Constructor

new RxDB(options): RxDB;

Defined in: packages/rxdb/src/RxDB.ts:239

构造函数

Parameters

ParameterTypeDescription
optionsRxDBOptionsRxDB 配置选项

Returns

RxDB

Properties

connected$

readonly connected$: Observable<boolean>;

Defined in: packages/rxdb/src/RxDB.ts:189

连接状态 Observable


entityManager

readonly entityManager: EntityManager;

Defined in: packages/rxdb/src/RxDB.ts:199

Entity 管理


localAdapter$

readonly localAdapter$: Observable<IRxDBAdapter & RxDBAdapterLocalBase>;

Defined in: packages/rxdb/src/RxDB.ts:161

本地适配器


remoteAdapter$

readonly remoteAdapter$: Observable<IRxDBAdapter & RxDBAdapterRemoteBase>;

Defined in: packages/rxdb/src/RxDB.ts:175

远程适配器


RxDBBranch

RxDBBranch: typeof RxDBBranch;

Defined in: packages/rxdb/src/system/types.ts:504

RxDBBranch


RxDBChange

RxDBChange: typeof RxDBChange;

Defined in: packages/rxdb/src/system/types.ts:500

RxDBChange


RxDBMigration

RxDBMigration: typeof RxDBMigration;

Defined in: packages/rxdb/src/system/types.ts:496

RxDBMigration


RxDBSync

RxDBSync: typeof RxDBSync;

Defined in: packages/rxdb/src/system/types.ts:492

RxDBSync


schemaManager

readonly schemaManager: SchemaManager;

Defined in: packages/rxdb/src/RxDB.ts:194

Schema 管理


versionManager

readonly versionManager: VersionManager;

Defined in: packages/rxdb/src/RxDB.ts:204

版本管理

Accessors

config

Get Signature

get config(): RxDBOptions;

Defined in: packages/rxdb/src/RxDB.ts:231

Returns

RxDBOptions


context

Get Signature

get context(): RxDBContext;

Defined in: packages/rxdb/src/RxDB.ts:209

设置环境上下文

Returns

RxDBContext

Set Signature

set context(context): void;

Defined in: packages/rxdb/src/RxDB.ts:213

Parameters
ParameterType
contextRxDBContext
Returns

void


firstConnectedAt

Get Signature

get firstConnectedAt(): Date | undefined;

Defined in: packages/rxdb/src/RxDB.ts:220

获取首次连接时间

Returns

Date | undefined


version

Get Signature

get version(): string;

Defined in: packages/rxdb/src/RxDB.ts:227

获取 RxDB 版本号

Returns

string

Methods

adapter()

adapter<K>(adapterName, adapter): this;

Defined in: packages/rxdb/src/RxDB.ts:289

注册 adapter

Type Parameters

Type Parameter
K extends string | number

Parameters

ParameterTypeDescription
adapterNameK适配器名称
adapterAdapterFactory适配器工厂函数

Returns

this

返回 RxDB 实例,支持链式调用


addEventListener()

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

Defined in: packages/rxdb/src/RxDB.ts:429

监听事件

Type Parameters

Type Parameter
T extends keyof RxDBEventMap

Parameters

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

Returns

void


connect()

connect<K>(adapterName): Promise<RxDBAdapters[K]>;

Defined in: packages/rxdb/src/RxDB.ts:349

连接适配器

Type Parameters

Type Parameter
K extends string | number

Parameters

ParameterTypeDescription
adapterNameK适配器名称

Returns

Promise<RxDBAdapters[K]>

返回连接的适配器实例


disconnect()

disconnect<K>(adapterName): Promise<void>;

Defined in: packages/rxdb/src/RxDB.ts:399

断开适配器连接

仅断开指定适配器;只有当所有适配器都已断开时,才执行全局拆卸 (插件、网关、versionManager 与初始化状态)。避免单适配器断开误拆全局资源。

Type Parameters

Type Parameter
K extends string | number

Parameters

ParameterTypeDescription
adapterNameK适配器名称

Returns

Promise<void>


disconnectAll()

disconnectAll(): Promise<void>;

Defined in: packages/rxdb/src/RxDB.ts:415

断开所有适配器连接并执行全局拆卸

Returns

Promise<void>


dispatchEvent()

dispatchEvent(event): void;

Defined in: packages/rxdb/src/RxDB.ts:446

派发事件

Parameters

ParameterTypeDescription
eventRxDBEvent要派发的事件对象

Returns

void


getAdapter()

getAdapter<K>(adapterName): Promise<RxDBAdapters[K]>;

Defined in: packages/rxdb/src/RxDB.ts:316

获取适配器实例

Type Parameters

Type Parameter
K extends string | number

Parameters

ParameterTypeDescription
adapterNameK适配器名称

Returns

Promise<RxDBAdapters[K]>

返回适配器实例的 Promise

Throws

当适配器未注册时抛出错误


getRepositoryConfig()

getRepositoryConfig(repositoryName):
| IRepositoryConfig<Repository<any, IRepository<any>>>
| undefined;

Defined in: packages/rxdb/src/RxDB.ts:340

获取 Repository 配置

Parameters

ParameterTypeDescription
repositoryNamestringRepository 名称

Returns

| IRepositoryConfig<Repository<any, IRepository<any>>> | undefined

Repository 配置对象,如果不存在返回 undefined


init()

init(): void;

Defined in: packages/rxdb/src/RxDB.ts:252

初始化 RxDB

Returns

void


removeEventListener()

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

Defined in: packages/rxdb/src/RxDB.ts:438

移除事件监听器

Type Parameters

Type Parameter
T extends keyof RxDBEventMap

Parameters

ParameterTypeDescription
typeT事件类型
listenerEventListener<RxDBEventMap[T]>要移除的事件监听器函数

Returns

void


repository()

repository<RT>(repositoryName, config): RxDB;

Defined in: packages/rxdb/src/RxDB.ts:278

注册 Repository 统一接口,所有 repository 配置存储在 RxDB 中

Type Parameters

Type Parameter
RT extends Repository<any, IRepository<any>>

Parameters

ParameterTypeDescription
repositoryNamestringRepository 名称
configIRepositoryConfig<RT>Repository 配置对象

Returns

RxDB


use()

use<Options>(plugin, options?): RxDB;

Defined in: packages/rxdb/src/RxDB.ts:300

安装插件

Type Parameters

Type ParameterDefault type
Optionsany

Parameters

ParameterTypeDescription
pluginPlugin<Options>插件构造函数
options?Options插件选项

Returns

RxDB

返回 RxDB 实例,支持链式调用