【发布时间】:2013-04-23 07:17:24
【问题描述】:
我尝试在播放视图模板中使用函数
@active(path: String):String = @{
var active:String = ""
if (request.path.startsWith(path)) {
active = "class=\"active\""
}
return active
}
<div class="container-fluid">
....
<li @active("/page") ...>
play 编译器说它找不到值 active。这里有什么问题?
【问题讨论】:
-
第一,第二个@符号是不必要的。其次,您是否在自己的文件中定义了@active 函数和/或导入了它?
-
我现在将它移到了自己的文件中。像这样它可以工作。没关系,因为我在其他文件中也需要它。
-
@korefn:实际上,第二个 @ 符号告诉 Play 这是 Play 文档称为“纯”(即 Scala)代码的块,而不是 HTML 模板的一部分。如果他省略了那个@,函数将返回“var active:String ... etc”。作为文字文本。
标签: scala playframework playframework-2.0