鉴于以下途径呼吁减少对阿卡HTTP路线名单产生编译错误(参数没有隐含价值加入)
val route1: PathMatcher[Unit] = PathMatcher("app")
val route2: PathMatcher1[String] = PathMatchers.Segment
val route3: PathMatcher[Unit] = PathMatcher("lastSegment")
我可以很容易地定义
val resultingRoute: PathMatcher[Tuple1[String]] = route1/route2/route3
得到预期的类型(的PathMatcher [元组[字符串]])。
但是编程方式创建,如路线
val routeDef = List(route1, route2, route3)
val resultingRoute = routeDef.reduce((a,b) => a/b)
将无法编译,给我
找不到参数内含价值加盟:akka.http.scaladsl.server.util.TupleOps 。加入[_1,_1]
此外,推断出的类型的resultingRoute是
PathMatcher[_ >: Unit with Tuple1[String] with join.Out]
我真的很感激任何提示给我一些迹象,说明我在这里做错了什么或者如何解决这个问题。
为了完整起见,这里是我的进口:
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.server.{PathMatcher, _}
非常感谢!
'routeDef'在哪里定义? –
更新了添加routeDef赋值的问题,谢谢! – evandor