问题标签 [circe-optics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
256 浏览

json - 使用 circe-optics 从 json 中检索空值

我的 json 看起来像这样:

我正在尝试card_expiration使用此函数检索所有字段值:

问题是,上面的表达式只返回一个结果 - 对于第一张卡,但我真的需要得到类似的东西List(Some("01/20"), None)!在这种情况下我能做什么?

0 投票
0 回答
114 浏览

scala - 使用 circe-optics 解码嵌套数组

我有这样的 JSON:

我想List[(Long, List[Long])]用 circe-optics 将其解码。我做到了:

我想知道是否可以为此定义一个镜头,只需将 JSON 转换为所需的映射,而无需显式映射到中间数组。如果是这样,怎么做?

0 投票
1 回答
246 浏览

scala - 如何使用圆形光学遍历具有多个字段的对象列表

我正在寻找一种最优雅的方式来遍历具有 circe optics 的 Json 中具有多个字段的对象列表。

假设我们有这种 JSON:

我们有一个案例类case class Entity(key1: String, key2: String)

所以我想找到最优雅和最时尚的方式来遍历这个 JSON 并最终创建一个案例对象列表。

我知道我可以使用每个: root.each.key1.string.getAll(json),但是我将如何构建一个镜头,它会给我一个可遍历的元组(?)或者我可以理解的东西。我可能会以某种方式组合镜头。

已经有一个这样的问题(如何使用 Circe 解析对象数组),但每个对象中只有一个字段。

0 投票
1 回答
44 浏览

scala - Circe-Optics 如何用破折号指定路径

我正在尝试使用 circe-optics 访问 json 中的一个字段。问题是该字段包含破折号:

root.TAB-NR.string

虽然如果我写

root.TAB_NR.string它有效,但该字段不存在。

知道如何处理这种情况吗?

0 投票
1 回答
123 浏览

json - 如何使用 Circe 解码包含 json 的数组

我有我的 circe 解码器,如下所示。我相信我的情绪解码器可以正常工作,所以不会在下面包含它。

我的 Json 看起来像这样

我只是想要valuevalue_classification。可以看出,这些值位于一个数组中。

我怀疑 Circe 正在寻找解码 aList[data]但我不想创建case class DataInfo(list: List[Data])它只是感觉不对。