使用scala模板代码块和值作为模板调用的参数(Play Framework)

时间:2015-04-20 09:22:46

标签: scala templates playframework playframework-2.0 twirl

我尝试使用可重用的代码块和可重用的值作为函数调用的参数(另一个模板),但总是出现在编译错误中:"非法启动简单表达式"

我们说我有header模板,它以字符串作为参数。它以这种方式调用:@header("My title")

现在,我想要"我的头衔"是代码块或值的结果。

例如,我尝试过这种代码块:

@headerText(workbookArea: WorkbookArea, workbookItemName: String) = @{
    workbookArea.className + " > " + workbookItemName
}

@header(@headerText(workbookArea, workbookItemName))

或者这样的价值:

@defining(workbookArea.className + " > " + workbookItemName) { headerText =>
    @header(@headerText)
}

但是这两个代码片段都没有编译。它应该如何完成?

1 个答案:

答案 0 :(得分:1)

如果你向我们展示错误会更容易,不管怎样 - 不要在括号内使用@符号,它应该是:

@header(headerText(workbookArea, workbookItemName))