prepareIncrementalUpdate()
function prepareIncrementalUpdate<T, RT>(task, data): IncrementalUpdateContext<T>;
Defined in: packages/rxdb/src/query/merge-update.utils.ts:216
为一批 UPDATE 事件准备增量合并上下文。
这是插件实现增量合并的入口原语:插件(如树查询)拿到 task 与本批事件后,
先调它得到 { cache, classification },再按自己的 task 类型决定怎么改 task.result。
它封住三处纯内部装配——完整实体怎么反序列化、where 判定器是哪个、缓存怎么建。 这三处不外泄有实际约束力:where 判定必须基于完整实体,patch/inversePatch 只是 增量字段,复合 where 下拿裸 patch 判定会因字段缺失恒判 false,让 newlyUnmatchedIds 漏算、count 静默偏差。各插件自行接线就是各写一份判定,漂移了也不会报错。
进基线后受兼容承诺约束,见 website/docs/versioning.md。
Type Parameters
| Type Parameter | Default type |
|---|---|
T extends EntityType | - |
RT | unknown |
Parameters
| Parameter | Type | Description |
|---|---|---|
task | QueryTask<T, RT> | 正在合并的查询任务;task.options.where 为空时视为全匹配 |
data | RxDBEntityLocalUpdatedEventData<T>[] | 本批本地 UPDATE 事件 |