跳到主要内容

RxDBBranchRemovalContext

Defined in: packages/rxdb/src/rxdb-plugin-system.ts:82

移除一条分支时,贡献方清自己那几行所需的上下文

Remarks​

只有两个字段,与 RxDBBranchCreationContext 逐字同形——两者是同一条分支的一生一死, 形状不同就意味着建行与删行各认一套「这条分支是谁」,而漂移的那一天,删掉的是另一条分支的行。

没有 entityManager。 建行要 instantiate() 造行对象,删行只需要先读出来再交给 executor.removeMany();多带一个用不上的入参,等于邀请贡献方在清理路径上造新行。

调用时点排在分支行自己被删之前:remove_branch 的「查子分支 → 查 change → 删」是一段 有顺序的校验,贡献方抢在前面把 rxdb_branch 删掉的话,那段校验读到的就是一条不存在的分支。

Properties​

branchId​

readonly branchId: string;

Defined in: packages/rxdb/src/rxdb-plugin-system.ts:87

即将被删、此刻仍在库里的分支 id


executor​

readonly executor: TransactionExecutor;

Defined in: packages/rxdb/src/rxdb-plugin-system.ts:84

正在删这条分支的事务执行器