如何编写扩展方法以从Argonaut null
对象中删除Json
值的所有键:
我试过了:
package object Extensions {
implicit class JsonExtensions(val json: Json) extends AnyVal {
def removeNulls: Json = {
json.withObject(j => JsonObject.from (j.toMap.filter(!_._2.isNull).toList))
}
}
}
但它似乎只是在null
对象的顶层删除了Json
值的键...
答案 0 :(得分:0)
Argonaut在内部支持此功能,您可以使用PrettyParams
执行以下操作:
def removeNulls: Json = {
json.pretty(PrettyParams.nospace.copy(dropNullKeys = true)).toJson
}
希望这能涵盖您的问题!