1

我使用 circe 有一段时间了,当你在标准示例中工作时,一切都很好。认为我正在努力的一件事是在处理案例类时获得更多的可重用性。这是一个案例:

trait EntityResponse extends Entity
{
  def meta: MetaEntityResponse
}

case class GetProductResponse(id: Int,
                              name: String,                              
                              price: BigDecimal
                             )
case class GetProductListResponse(items: Seq[GetProductResponse],
                                  meta: MetaPaging)

我在多个上下文中使用 GetProductResponse 作为示例:
1. 如果我返回一个独立产品,我想混入 EntityResponse
2. 当我返回一个产品列表时,我不需要为每个产品都混入它添加在列表对象上

也许有更好的方法来做到这一点,只要我不必重复相同的案例类两次 1 具有 trait 和 1 没有它,这似乎是目前唯一的选择。

4

0 回答 0