我正在使用 scala 2.11.8 和 circe 0.7.0
我正在使用 scalajs 与区分不存在的字段和null
发送的 JSON 中的字段的 API 进行通信。
我正在寻找一种将case class
包含Option[T]
字段的 scala 编码为 JSON 的方法,这些字段我将设置None
为表示缺失值:
case class Foo(
optionalFieldOne: Option[Int] = 42,
optionalFieldTwo: Option[Int] = null,
optionalFieldThree: Option[Int] = None
)
implicit FooEncoder: Encoder[Foo] = deriveEncoder[Foo]
val test = Foo()
//What the code actually produces
test.asJson.noSpace
//>{"optionalFieldOne": 42,"optionalFieldTwo":null, "optionalFieldThree":null}
//What I would like
test.asJson.noSpace
//>{"optionalFieldOne": 42,"optionalFieldTwo":null}
circe是否提供了任何可能的配置?你知道如何访问它吗,我已经浏览了所有发行说明、github 问题和他们的网站文档,但没有成功。
如果此类配置选项不可用,有人将如何正确实现它?