scala play动作中隐式参数请求的范围和好处?

我可以理解如何使用隐式参数,但我怀疑
scala播放操作的必要性…在播放文档中出现如下:

It is often useful to mark the request parameter as implicit so it can be implicitely used by other APIs that need it

现在…阅读其他stackoverflow答案:
Implicit keyword before a parameter in anonymous function in Scala

似乎比使用隐含参数这里只是一个“语法糖”

 Action { request =>
   Ok("Got request [" + request + "]",request)  //with implicit request I avoid pass the request parameter...
  }

我的问题是:

1)是隐式参数的范围只有我的lambda的范围没有?…
2)我忽略了一些事情吗?…

读这个答案:
When should I make methods with implicit argument in Scala?

似乎比使用隐式参数在这种情况下是“过度使用”
3)如何在不使用隐式参数的情况下查看代码以及我正在避免使用它的样板?

我重写此代码https://stackoverflow.com/a/5015161/340451没有隐式参数和定义,代码更可读和清晰(更少隐含:D)…我知道隐式参数真正有用的有用情况(例如:akka api)但我不能了解它的模式有多么有用,为什么必须使用…

谢谢!

最佳答案 1)是的,请求的范围在动作块内

2)抱歉,不明白这个问题

一般来说,你应该谨慎使用implicits.我们认为在这个特定的上下文中使用隐式传递请求是合理的.

点赞