首页 > 解决方案 > 什么是在 Koa / Javascript 中实现 scala `Either[A,B]` 结构的方法

问题描述

我有一些使用 Play scala 的项目,我发现Either[A, B]在模型中使用 scala 构造非常有用,因此在我的控制器中我有类似的东西(例如)

val modelResult:Either[String, String] = ...

modelResult match {
  case Left(a) => Ok(... do something here that is meant for a 200 ....)
  case Right(err) => BadRequest(display an error in a 400)
}

在 Javascript 中做类似事情的好方法是什么(我使用 Koa 框架)

对于那些不熟悉该Either结构 的人https://www.scala-lang.org/api/2.12.0/scala/util/Either.html

标签: javascriptscalaportingkoakoa2

解决方案


查看 JavaScript 的众多 FP 库之一。Rambda是一种流行的(参见docs/#either)。你也可以看看daggy来为副产品建模。

Thinking in Rambda很好地介绍了 Rambda


推荐阅读