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:234
构造函数
Parameters
| Parameter | Type | Description |
|---|---|---|
options | RxDBOptions | RxDB 配置选项 |
Returns
RxDB
Properties
connected$
readonly connected$: Observable<boolean>;
Defined in: packages/rxdb/src/RxDB.ts:184
连接状态 Observable
entityManager
readonly entityManager: EntityManager;
Defined in: packages/rxdb/src/RxDB.ts:194
Entity 管理
localAdapter$
readonly localAdapter$: Observable<IRxDBAdapter & RxDBAdapterLocalBase>;
Defined in: packages/rxdb/src/RxDB.ts:156
本地适配器
remoteAdapter$
readonly remoteAdapter$: Observable<IRxDBAdapter & RxDBAdapterRemoteBase>;
Defined in: packages/rxdb/src/RxDB.ts:170
远程适配器
RxDBBranch
RxDBBranch: typeof RxDBBranch;
Defined in: packages/rxdb/src/system/types.ts:494
RxDBBranch
RxDBChange
RxDBChange: typeof RxDBChange;
Defined in: packages/rxdb/src/system/types.ts:490
RxDBChange
RxDBMigration
RxDBMigration: typeof RxDBMigration;
Defined in: packages/rxdb/src/system/types.ts:486
RxDBMigration
RxDBSync
RxDBSync: typeof RxDBSync;
Defined in: packages/rxdb/src/system/types.ts:482
RxDBSync
schemaManager
readonly schemaManager: SchemaManager;
Defined in: packages/rxdb/src/RxDB.ts:189
Schema 管理
versionManager
readonly versionManager: VersionManager;
Defined in: packages/rxdb/src/RxDB.ts:199
版本管理
Accessors
config
Get Signature
get config(): RxDBOptions;
Defined in: packages/rxdb/src/RxDB.ts:226
Returns
context
Get Signature
get context(): RxDBContext;
Defined in: packages/rxdb/src/RxDB.ts:204
设置环境上下文
Returns
Set Signature
set context(context): void;
Defined in: packages/rxdb/src/RxDB.ts:208
Parameters
| Parameter | Type |
|---|---|
context | RxDBContext |
Returns
void
firstConnectedAt
Get Signature
get firstConnectedAt(): Date | undefined;
Defined in: packages/rxdb/src/RxDB.ts:215
获取首次连接时间
Returns
Date | undefined
version
Get Signature
get version(): string;
Defined in: packages/rxdb/src/RxDB.ts:222
获取 RxDB 版本号
Returns
string
Methods
adapter()
adapter<K>(adapterName, adapter): this;
Defined in: packages/rxdb/src/RxDB.ts:285
注册 adapter
Type Parameters
| Type Parameter |
|---|
K extends string | number |
Parameters
| Parameter | Type | Description |
|---|---|---|
adapterName | K | 适配器名称 |
adapter | AdapterFactory | 适配器工厂函数 |
Returns
this
返回 RxDB 实例,支持链式调用
addEventListener()
addEventListener<T>(type, listener): void;
Defined in: packages/rxdb/src/RxDB.ts:403
监听事件
Type Parameters
| Type Parameter |
|---|
T extends keyof RxDBEventMap |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<RxDBEventMap[T]> | 事件监听器函数 |
Returns
void
connect()
connect<K>(adapterName): Promise<RxDBAdapters[K]>;
Defined in: packages/rxdb/src/RxDB.ts:345
连接适配器
Type Parameters
| Type Parameter |
|---|
K extends string | number |
Parameters
| Parameter | Type | Description |
|---|---|---|
adapterName | K | 适配器名称 |
Returns
Promise<RxDBAdapters[K]>
返回连接的适配器实例
disconnect()
disconnect<K>(adapterName): Promise<void>;
Defined in: packages/rxdb/src/RxDB.ts:382
断开适配器连接
Type Parameters
| Type Parameter |
|---|
K extends string | number |
Parameters
| Parameter | Type | Description |
|---|---|---|
adapterName | K | 适配器名称 |
Returns
Promise<void>
disconnectAll()
disconnectAll(): Promise<void>;
Defined in: packages/rxdb/src/RxDB.ts:393
断开所有适配器连接
Returns
Promise<void>
dispatchEvent()
dispatchEvent(event): void;
Defined in: packages/rxdb/src/RxDB.ts:420
派发事件
Parameters
| Parameter | Type | Description |
|---|---|---|
event | RxDBEvent | 要派发的事件对象 |
Returns
void
getAdapter()
getAdapter<K>(adapterName): Promise<RxDBAdapters[K]>;
Defined in: packages/rxdb/src/RxDB.ts:312
获取适配器实例
Type Parameters
| Type Parameter |
|---|
K extends string | number |
Parameters
| Parameter | Type | Description |
|---|---|---|
adapterName | K | 适配器名称 |
Returns
Promise<RxDBAdapters[K]>
返回适配器实例的 Promise
Throws
当适配器未注册时抛出错误
getRepositoryConfig()
getRepositoryConfig(repositoryName):
| IRepositoryConfig<Repository<any, IRepository<any>>>
| undefined;
Defined in: packages/rxdb/src/RxDB.ts:336
获取 Repository 配置
Parameters
| Parameter | Type | Description |
|---|---|---|
repositoryName | string | Repository 名称 |
Returns
| IRepositoryConfig<Repository<any, IRepository<any>>>
| undefined
Repository 配置对象,如果不存在返回 undefined
init()
init(): void;
Defined in: packages/rxdb/src/RxDB.ts:248
初始化 RxDB
Returns
void
removeEventListener()
removeEventListener<T>(type, listener): void;
Defined in: packages/rxdb/src/RxDB.ts:412
移除事件监听器
Type Parameters
| Type Parameter |
|---|
T extends keyof RxDBEventMap |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<RxDBEventMap[T]> | 要移除的事件监听器函数 |
Returns
void
repository()
repository<RT>(repositoryName, config): RxDB;
Defined in: packages/rxdb/src/RxDB.ts:274
注册 Repository 统一接口,所有 repository 配置存储在 RxDB 中
Type Parameters
| Type Parameter |
|---|
RT extends Repository<any, IRepository<any>> |
Parameters
| Parameter | Type | Description |
|---|---|---|
repositoryName | string | Repository 名称 |
config | IRepositoryConfig<RT> | Repository 配置对象 |
Returns
RxDB
use()
use<Options>(plugin, options?): RxDB;
Defined in: packages/rxdb/src/RxDB.ts:296
安装插件
Type Parameters
| Type Parameter | Default type |
|---|---|
Options | any |
Parameters
| Parameter | Type | Description |
|---|---|---|
plugin | Plugin<Options> | 插件构造函数 |
options? | Options | 插件选项 |
Returns
RxDB
返回 RxDB 实例,支持链式调用