在Thymeleaf中如何if-else?
怎样做一个简单的最好办法if
- else
在Thymeleaf?
我想在Thymeleaf中实现与
<c:choose> <c:when test="${potentially_complex_expression}">
<h2>Hello!</h2>
</c:when>
<c:otherwise>
<span class="xxx">Something else</span>
</c:otherwise>
</c:choose>
在JSTL中。
到目前为止,我发现:
<div th:with="condition=${potentially_complex_expression}" th:remove="tag"> <h2 th:if="${condition}">Hello!</h2>
<span th:unless="${condition}" class="xxx">Something else</span>
</div>
我不想评估potentially_complex_expression
两次。这就是为什么我引入局部变量的原因condition
。仍然我不喜欢同时使用th:if="${condition}
和th:unless="${condition}"
。
重要的是,我使用了两个不同的HTML标签:假设h2
和span
。
您能建议一种更好的方法吗?
回答:
Thymeleaf具有<c:choose>
与Thymeleaf 2.0中引入的and
<c:when>
: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>
<p th:case="*">User is some other thing</p>
</div>
见这个语法简单的解释(或Thymeleaf教程)。
免责声明 :根据StackOverflow规则的要求,我是Thymeleaf的作者。
以上是 在Thymeleaf中如何if-else? 的全部内容, 来源链接: utcz.com/qa/435915.html