跳到主要内容

decodeRxDBEntityIdentity()

function decodeRxDBEntityIdentity(encoded): RxDBEntityId;

Defined in: packages/rxdb/src/system/change-codec.ts:451

encodeRxDBEntityIdentity 的反序列化。

靠前缀而非外部 schema 区分两类 ID:字节流以魔数 0xFF 0x52 0x58 开头即为 数值 / bigint,否则整段按 UTF-8 字符串解。0xFF 在 UTF-8 里是非法首字节, 所以合法的字符串 ID 不可能误撞进 typed 分支。

解码器带 fatal: true:非法 UTF-8 直接抛,而不是静默替换成 U+FFFD —— 身份键错一个字符就会指向另一条记录,静默降级比抛错危险得多。

Parameters​

ParameterTypeDescription
encodedUint8ArrayencodeRxDBEntityIdentity 产出的字节

Returns​

RxDBEntityId

Throws​

魔数对上但版本字节不是当前支持的版本

Throws​

类型字节无法识别,或数值 payload 不是有限数