needsOfflineWrite()
function needsOfflineWrite(metadata, globalSync?): boolean;
Defined in: packages/rxdb/src/sync-contract/sync-type-utils.ts:312
检查 repository 在远端不可达时是否接受本地写(并在恢复连接后重放)
Parameters
| Parameter | Type | Description |
|---|---|---|
metadata | EntityMetadata | 实体元数据 |
globalSync? | | SyncOptions | EntitySyncResolver | 全局同步配置(可选);传实例解析器 rxdb.entitySync 时连同实例覆盖一起解析 |
Returns
boolean
是否支持离线写
Example
needsOfflineWrite(metadataFull); // true
needsOfflineWrite(metadataQueryCache); // true (经 REST 动词重放,不走 changelog)
needsOfflineWrite(metadataRemote); // false (没有本地存储,无处可写)
needsOfflineWrite(metadataLocal); // false (没有远端,无处可重放)
needsOfflineWrite(metadataNone); // false
Remarks
与 needsPush 是两个正交问题,别用其中一个替代另一个:querycache 在这里是
true、在 needsPush 是 false。回推驱动按这两个字段分派 ——
push 的走 syncManager.push(),offlineWrite && !push 的走 QueryCache 出站重放。