跳到主要内容

CommitResult

type CommitResult =
| {
changeSetCount: number;
commitId: string;
headRevision: number;
ok: true;
}
| {
conflict: CommitConflict;
ok: false;
};

Defined in: packages/rxdb-plugin-working-tree/src/working-tree/commit-command.ts:71

一次 commit() 的结果。

Union Members​

Type Literal​

{
changeSetCount: number;
commitId: string;
headRevision: number;
ok: true;
}

changeSetCount​

readonly changeSetCount: number;

本次提交的变更单元数

commitId​

readonly commitId: string;

新 commit 的 id

headRevision​

readonly headRevision: number;

推进之后的 HEAD revision

ok​

readonly ok: true;

本次提交已落库


Type Literal​

{
conflict: CommitConflict;
ok: false;
}

conflict​

readonly conflict: CommitConflict;

诊断值;不入库,也没有「清除冲突」的 API

ok​

readonly ok: false;

三个捕获位中有一个对不上,本次提交一个字节都没落地

Remarks​

判别位是 ok 而不是「conflict 在不在」:后者要求调用方用 'conflict' in result 或可选属性判空,而可选属性在 strictNullChecks 关掉的消费端会静默塌成「总是成功」。