跳到主要内容

ReplayManager

Defined in: packages/rxdb-plugin-replay/src/types.ts:94

录制回放入口(rxdb.replay)。

Remarks​

除 state$ 外,所有成员在插件未安装(connect() 之前)或作用域已释放时 reject RxDBReplayError('not_installed')。

Properties​

state$​

readonly state$: Observable<ReplayState>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:96

录制状态;新订阅者立即收到当前值。

Methods​

deleteSession()​

deleteSession(sessionId): Promise<void>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:131

删除一个会话及其全部事件(同一事务)。这是释放录制库空间的唯一途径,插件从不自动删除。

Parameters​

ParameterType
sessionIdstring

Returns​

Promise<void>

Throws​

RxDBReplayError:session_recording(正在录制)、session_not_found


exportSession()​

exportSession(sessionId): Promise<ReplaySessionExport>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:125

导出整个会话(可 JSON.stringify 后存档或分享)。

Parameters​

ParameterType
sessionIdstring

Returns​

Promise<ReplaySessionExport>

Throws​

RxDBReplayError('session_not_found')


listCommitMarkers()​

listCommitMarkers(sessionId): Promise<ReplayCommitMarker[]>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:119

会话里的 commit 标记,seq 升序。

Parameters​

ParameterType
sessionIdstring

Returns​

Promise<ReplayCommitMarker[]>

Throws​

RxDBReplayError('session_not_found')


listSessions()​

listSessions(): Promise<ReplaySessionInfo[]>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:107

全部会话,startedAt 倒序。

Returns​

Promise<ReplaySessionInfo[]>


readEvents()​

readEvents(sessionId, range?): Promise<eventWithTime[]>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:113

读一个会话的事件,seq 升序;给了区间则只读 timestamp 落在区间内的。

Parameters​

ParameterType
sessionIdstring
range?ReplayEventRange

Returns​

Promise<eventWithTime[]>

Throws​

RxDBReplayError('session_not_found')


restoreToCommit()​

restoreToCommit(commitId): Promise<ReplayRestoreResult>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:139

把工作树恢复到某个 commit(取恢复前那一刻的新鲜凭据调 workingTree.restore())。

Parameters​

ParameterType
commitIdstring

Returns​

Promise<ReplayRestoreResult>

Throws​

RxDBReplayError('working_tree_unavailable'):没装工作树插件;其余错误原样透传


start()​

start(): Promise<string>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:103

开始录制一个新会话。

Returns​

Promise<string>

新会话 id

Throws​

RxDBReplayError:no_dom、already_recording、store_limit、recording_db_unavailable


stop()​

stop(): Promise<void>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:105

停止录制并冲刷剩余事件;未在录制时直接返回。冲刷失败时抛原错误。

Returns​

Promise<void>


usage()​

usage(): Promise<ReplayUsage>;

Defined in: packages/rxdb-plugin-replay/src/types.ts:133

录制库当前用量与生效的上限。

Returns​

Promise<ReplayUsage>