UpdateDataCache<T>
Defined in: packages/rxdb/src/query/merge-update.utils.ts:69
更新数据的缓存管理器 用于缓存序列化后的实体数据,避免重复序列化
Type Parameters
| Type Parameter |
|---|
T extends EntityType |
Constructors
Constructor
new UpdateDataCache<T>(data, serialize): UpdateDataCache<T>;
Defined in: packages/rxdb/src/query/merge-update.utils.ts:74
Parameters
| Parameter | Type |
|---|---|
data | RxDBEntityLocalUpdatedEventData<T>[] |
serialize | (event) => InstanceType<T> |
Returns
UpdateDataCache<T>
Methods
getData()
getData(id):
| RxDBEntityLocalUpdatedEventData<T>
| undefined;
Defined in: packages/rxdb/src/query/merge-update.utils.ts:117
获取原始更新数据
Parameters
| Parameter | Type |
|---|---|
id | RxDBEntityId |
Returns
| RxDBEntityLocalUpdatedEventData<T>
| undefined
getSerializedBefore()
getSerializedBefore(id, inversePatch): InstanceType<T> | undefined;
Defined in: packages/rxdb/src/query/merge-update.utils.ts:104
获取序列化后的更新前数据
inversePatch 只含被改字段的旧值,单独重建会丢失所有未变字段,导致复合 where 判定错误。这里以"完整更新后实体"为底,叠加 inversePatch 还原出 完整的更新前态。返回的是全新的普通对象,不会改写共享的实体缓存实例。
Parameters
| Parameter | Type |
|---|---|
id | RxDBEntityId |
inversePatch | Readonly<Partial<InstanceType<T>>> |
Returns
InstanceType<T> | undefined
getSerializedUpdate()
getSerializedUpdate(id): InstanceType<T> | undefined;
Defined in: packages/rxdb/src/query/merge-update.utils.ts:84
获取序列化后的更新数据
Parameters
| Parameter | Type |
|---|---|
id | RxDBEntityId |
Returns
InstanceType<T> | undefined