首页 > 解决方案 > 我们可以用lens查询和更新不同层次的结构吗?

问题描述

在处理嵌套结构(来自各种 API 的 JSON)时,我经常使用 lens,我担心使用 lens 进行非平凡的数据操作有些复杂。

非平凡是指在与我查询的节点不同的节点上执行更新。

例如,我会:

一个比较可靠的策略是使用“阶段”,其中使用简单的镜头来提取中间结果并应用新镜头来进一步缩小或更新结果。但这有点违背镜头的精神,我应该能够更新整个结构。

其他时候我很幸运能找到类似的组合器maximumByOfaside但我觉得我缺乏词汇和对问题的理解——什么样的组合器足以完成这类任务?

有没有惯用的方法来解决这个问题lens

标签: haskellhaskell-lens

解决方案


推荐阅读