我可以理解如何使用隐式参数,但我怀疑 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答案: Scala中匿名函数中的参数之前的隐式关键字
似乎在这里使用隐式参数只是一个“语法糖”
Action { request =>
Ok("Got request [" + request + "]",request) //with implicit request I avoid pass the request parameter...
}
我的问题是:
1) 隐式参数的范围只是我的 lambda 的范围吗?... 2) 我是否忽略了它?...
阅读另一个答案: 我什么时候应该在 Scala 中使用隐式参数创建方法?
在这种情况下似乎比使用隐式参数是“过度使用” 3)不使用隐式参数的代码会如何看,我避免使用什么样板?
我重写了这段代码https://stackoverflow.com/a/5015161/340451没有隐式参数和定义,并且代码更具可读性和清晰性(不那么隐式:D)......我知道隐式参数非常有用的有用案例(例如:akka api)但我不明白它的模式有多大用处以及为什么必须使用......
谢谢!