如何包含部分内容?

时间:2016-01-09 18:29:29

标签: spring-mvc spring-boot velocity

我明白了:

main.vm

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title> test </title>
</head>
<body>

$content

</body>
</html>

这应该作为将要包含的所有其他视图的默认模板。

例如这一个:

example.vm

#define($content)
<div>
<p> Hello World ! </p>
</div>

#end

如何将部分内容作为内容包含在main.vm文件中? 我是否正确定义模板?

我无法从官方文档中找出答案。

我使用Spring Boot,一切都设置正确。

所有模板都在同一个文件夹中:

/资源/模板

编辑:

主要思想是拥有一个样板文件html文件,其中包含所有脚本标记和链接标记,头部和正文。

这应该是带有 $ content 变量的主模板,这是每个其他页面的占位符。

现在每个其他页面都应该包含在该主页面中。

我如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title> test </title>
</head>
<body>

$content

##the templates you want to 'execute' and render

#parse("example.vm")
#parse("example1.vm")
##...
#parse("example-n.vm")

##The templates you want to 'render' but not 'execute' as velocity templates.

#include("include.vm")
#include("include1.vm")
#include("include2.vm")
##...
#include("include-n.vm")

</body>
</html>

这会有所帮助......

请注意: -

  • 使用#parse()执行模板,然后将其包含在内。
  • 使用#include()宏会将模板包含为明文