gpt4 book ai didi

playframework-2.0 - 在 play 框架 scala 模板中声明和传递 List

转载 作者:行者123 更新时间:2023-12-05 01:08:37 24 4
gpt4 key购买 nike

我有一个 header.scala.html 文件,它需要一个字符串和一个列表参数

@(title: String)(scripts: List[String])
其他 Scala 文件将引用标题并传递特定列表,例如

@import scala._
@{val jsList = List("a", "b")}
@views.html.header("title"){jsList}

但是我收到 Compliation 错误 - 类型不匹配;找到:play.api.templates.Html 需要:java.util.List[String]

一定有一些我没有看到的语法问题......有人吗?

谢谢。

最佳答案

您不能在 Play 模板中声明变量(类似)。 ( here's a google groups discussion about it )

您可以做的第一件事是,如果您在模板中只需要一次该值:

@views.html.header("title")(List("a","b"))

请注意,您应该使用 () ,相信一切都在 {}之间被解释为 HTML 代码(因此您的类型不匹配错误)。

但是,如果您在模板中多次需要它,这不是一种合适的方法。然后您可以使用 defining堵塞:
@defining(List("a","b")) { jsList =>

@* using it once *@
@views.html.header("title")(jsList)

@* using it twice *@
<p>My list contains @jsList.size elements.</p>

@* ... *@
}

关于playframework-2.0 - 在 play 框架 scala 模板中声明和传递 List,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16974402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com