条件语句
"if" 和 "unless"
th:if
属性用法如下:
<a href="comments.html"
th:href="@{/product/comments(prodId=${prod.id})}"
th:if="${not #lists.isEmpty(prod.comments)}">view</a>
请注意,th:if
属性不仅是将评估布尔条件。 它的功能有点超出这一点,它将按照这些规则评估指定的表达式:
- 如果值不为 null:
- 如果值为布尔值,则为true。
- 如果值是数字,并且不为零
- 如果值是一个字符且不为零
- 如果value是String,而不是“false”,“off”或“no”
- 如果值不是布尔值,数字,字符或字符串。
- 如果值为null,则th:if 将为 false。
另外,th:if
有一个相反的属性th:unless
,前面的例子改为:
<a href="comments.html"
th:href="@{/comments(prodId=${prod.id})}"
th:unless="${#lists.isEmpty(prod.comments)}">view</a>
switch 语句
switch 语句使用th:switch
/ th:case
属性集合来实现:
<div th:switch="${user.role}">
<p th:case="'admin'">User is an administrator</p>
<p th:case="#{roles.manager}">User is a manager</p>
</div>
请注意,只要一个th:case
属性被评估为'true',每个其他同一个 switch 语句中的th:case
属性将被评估为false
。
th:case="*"
来设置默认选项:
<div th:switch="${user.role}">
<p th:case="'admin'">User is an administrator</p>
<p th:case="#{roles.manager}">User is a manager</p>
<p th:case="*">User is some other thing</p>
</div>