我理解Scala中的隐式参数和隐式转换,但我今天第一次看到这个:匿名函数中参数前面的隐式关键字:
Action { implicit request =>
Ok("Got request [" + request + "]")
}
Run Code Online (Sandbox Code Playgroud)
隐式关键字在这里做什么?
网络上是否有资源可以更详细地描述用例?
我使用scala中的play框架创建了代码,如下所示:
object Application extends Controller {
def hoge = Action( implicit request =>
val username = MyCookie.getName.get
Ok("hello " + username)
}
}
object MyCookie {
def getName( implicit request: RequestHeader ) = {
request.cookies.get("name").map(_.value)
}
}
Run Code Online (Sandbox Code Playgroud)
我收到了同事的代码审查.他说这个代码因隐式参数而无法读取.我无法回复他的意见.那么你能告诉我使用隐式参数的最佳方法是什么?我何时应该使用隐式参数?