0

我有一个捕获字符串的主模板:

@(captured: String)

.... other templating stuff

我有一个想要使用的子模板@captured

.... somewhere in this templating stuff we have:
@subTemplate(@captured) <- wants to use @captured

我试试这个,除了错误我什么也没得到。我确定这必须是可能的,所以我做错了什么?对不起,如果这个问题很简单,我只是不知道如何为谷歌简洁地表达它。

4

2 回答 2

3

captured当它作为变量传递时,您需要删除尾随 @ 符号。

例如

@subTemplate(@captured) --> @subTemplate(captured)

之所以会出现这种情况,是因为 @ 是一个特殊符号,它告诉 Play 模板引擎即将进行一些计算,而不仅仅是输出 HTML。在上面的例子中,通过调用子模板,你已经开始了一个计算(即使用了@符号),所以你不要在括号内再次使用它,因为编译器已经处于计算模式。

这在 Play 1.x 模板引擎中完全相同。

于 2012-05-26T06:43:15.867 回答
0

删除 中的前导“at” @captured。出于某种奇怪的原因,Play 直到现在都不想接受这一点并让它发挥作用。看看我是否可以重现该问题。

于 2012-05-26T05:57:55.350 回答