标准的html/xhtml注释
标准的html/xhtml注释可以在模板文件中任意使用。所有在<!– –>里面的内容都不会被thymeleaf和浏览器解析。
<!-- User info follows -->
<div th:text="${...}">
...
</div>
Thymeleaf级别的注释
thymeleaf级别的注释,指的是那些在引擎解析的时候会去掉的注释部分。
<!--/* 这些代码会被引擎解析时去掉 */-->
引擎会去掉所有<!–/* 和 */–>之间的内容。所以你也可以用它来显示静态文本。
<!--/*-->
<div>
you can see me only before thymeleaf processes me!
</div>
<!--*/-->
你可以用它来注释其他的TR。
<table>
<tr th:each="x : ${xs}">
...
</tr>
<!--/*-->
<tr>
...
</tr>
<tr>
...
</tr>
<!--*/-->
</table>
保留注释块的内容
thymeleaf中还有一种用法,在解析时用来保留注释块里的内容,并去掉注释标签。
<span>hello!</span>
<!--/*/ <div th:text="${...}"> ... </div> /*/-->
<span>goodbye!</span>
Thymeleaf解析系统会删除< !–/ * /,/ * / –>标记,保留里面的内容。
<span>hello!</span>
<div th:text="${...}">
...
</div>
<span>goodbye!</span>
th:block标签
th:block用来定义一个代码块。并执行里面的属性。这将在循环的时候特别有用。
<table>
<th:block th:each="user : ${users}">
<tr>
<td th:text="${user.login}">...</td>
<td th:text="${user.name}">...</td>
</tr>
<tr>
<td colspan="2" th:text="${user.address}">...</td>
</tr>
</th:block>
</table>
尤其在和保留内容的注释同时使用时:
<table>
<!--/*/ <th:block th:each="user : ${users}"> /*/-->
<tr>
<td th:text="${user.login}">...</td>
<td th:text="${user.name}">...</td>
</tr>
<tr>
<td colspan="2" th:text="${user.address}">...</td>
</tr>
<!--/*/ </th:block> /*/-->
</table>