在处理嵌套结构(来自各种API的JSON)时,我经常使用lens,而且我担心使用lens进行非平凡的数据操作会有些复杂。
“平凡”是指在与我查询的节点不同的节点上执行更新。
例如,我会:
price
)max
)以标识结果的“拥有”实体(例如order
)vip
标志)item
)一种比较可靠的策略是使用“阶段”,其中使用简单的镜头来提取中期结果并应用新镜头来进一步缩小范围或更新结果。但这有点违背镜头的精神,在那儿我应该能够更新整个结构。
有时候我很幸运地找到maximumByOf
,aside
之类的组合器,但我感到我缺乏词汇和对问题的理解-什么样的组合器足以完成此类任务? / p>
使用lens
可以做到这一点吗?