You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript中使用TypedJson解析含null值的JSON Map如何保留null键值对

解决TypedJson解析时保留null值键值对的问题

我之前也碰到过类似的情况,TypedJson默认在反序列化过程中会忽略值为null的键值对,这就导致后端传来的Map<String, Object>里带null的键无法在前端的columns对象里体现。不过不用修改null为空字符串,通过调整配置就能解决,给你两个可行的方案:

方案一:解析时单独配置

在调用TypedJson.parse()的时候,传入ParseOptions并开启preserveNulls选项,这样当前解析操作会保留所有null值的键:

// 假设jsonString是后端返回的JSON字符串
const employee = TypedJson.parse(jsonString, Employee, { preserveNulls: true });

方案二:在类属性上全局配置

如果你希望这个columns属性每次解析都保留null值,可以直接在@JsonMember装饰器里添加配置:

@JsonObject()
export class Employee {
  @JsonMember()
  public name: string;
  // 添加preserveNulls: true配置
  @JsonMember({ preserveNulls: true })
  public columns: { [name: string]: any };
}

这样配置后,后端传来的{ "myKey": null }这类键值对就会被完整解析到columns对象中,不会被忽略,完全满足你需要保留myKey: null形式的需求。

内容的提问来源于stack exchange,提问作者Bleamer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:06:44