通用模板库

时间:2012-03-08 16:59:11

标签: scala playframework-2.0

我正在尝试创建一个只包含可供其他视图使用的可重用HTML块的视图。想知道这样的事情是否可能:

在views.home.common.scala.html中:

@component1 = {
  some common html
}
@component2 = {
  some other stuff
}

在views.home.sample.scala.html中:

@(user:User)
import home._

@component1
@common.component2

到目前为止没有任何运气,我在样本中没有看到任何类似内容,但Template common use cases中涵盖了这个想法。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。我所做的是为每个公共块定义一个文件,然后导入包含所有这些文件的包。

例如:

在views.common.component1.scala.html中:

<div>
    Common component 1
</div>

在views.common.component2.scala.html中:

<div>
    Common component 2
</div>

在views.main.scala.html中:

@(content: Html)

@import common._

<!DOCTYPE html>
<html>
    <head></head>
    <body>
        @component1()
        @component2()
    </body>
</html>