作为一个新的斯卡拉,有人可以解释一下the code here?玩框架斯卡拉动作
val echo = Action { request =>
Ok("Got request [" + request + "]")
}
所以我得到的,你会创建一个名为回声新的价值,从一个动作特点(从我可以收集类似于Java接口)。 request
是某种说法,尽管我从未见过这种语法 - 括号和箭头=>
意味着什么?
我看到我创建了一个Result
对象,表示200响应,并且推测返回该响应。但是我从哪里返回?一个构造函数?
动作似乎是一个特质(https://github.com/playframework/playframework/blob/master/framework/src/play/src/main/scala/play/api/mvc/Action.scala)?所以当你编写'Action [some func]'时,你实际上正在对该函数调用'Action.apply'? – wrongusername
在你链接的文件中有'object Action extends ActionBuilder [Request]'和'Trait ActionBuilder [+ R [_]]'有一个'apply'方法,该方法需要'BodyParser'来扩展'Function1'。在Scala中,通常为特征和类设置一个“伴随对象”,这些特征和类将保存将会进入类中的静态成员/方法的东西。在这种情况下是工厂方法。在scala中,如果你调用像“foo(stuff)”这样的对象,它只是“foo.apply(stuff)”的语法糖“ –
啊我明白了,现在有很多意义,谢谢! :) – wrongusername