一、基礎語法
Thymeleaf是一種針對Web和獨立環境的現代伺服器端Java模板引擎。if-else是它所支持的基本語法之一。下面是if-else的基礎語法示例:
<!-- if語句語法 -->
<div th:if="${condition}">
<p>條件成立時顯示的內容</p>
</div>
<!-- if-else語句語法 -->
<div th:if="${condition}">
<p>條件成立時顯示的內容</p>
</div>
<div th:unless="${condition}">
<p>條件不成立時顯示的內容</p>
</div>
其中,if後面的${條件}表示需要判斷的條件表達式,如果成立則顯示第一個div中的內容;否則判斷第二個div中的unless,如果成立則顯示第二個div中的內容。
二、多條件判斷
在if-else中,可以設計多種條件判斷,如and,or等,下面是示例:
<div th:if="${condition1 and condition2}">
<p>兩個條件都成立時,顯示的內容</p>
</div>
<div th:if="${condition1 or condition2}">
<p>至少有一個條件成立時,顯示的內容</p>
</div>
三、嵌套判斷
除了基礎語法和多條件判斷外,if-else還支持嵌套判斷,即在if-else中繼續添加if-else語句,下面是示例:
<div th:if="${top_condition}">
<p>頂層條件成立時,顯示頂層div中的內容</p>
<div th:if="${mid_condition}">
<p>中層條件成立時,顯示中層div中的內容</p>
<div th:if="${bottom_condition}">
<p>底層條件成立時,顯示底層div中的內容</p>
</div>
</div>
</div>
註:嵌套判斷的縮進尤為重要,可以在代碼中使層級關係更加清晰。
四、屬性判斷
在實際開發中,需要在if-else中根據不同的情況,為HTML元素添加不同的屬性。這個時候,簡單的if-else語句已經不能滿足我們的需求了。針對這種情況,Thymeleaf也提供了支持,下面是示例:
<div th:if="${condition}" th:attr="attrName=attrValue">
<p>條件成立時,為div元素添加attrName屬性,並賦值為attrValue</p>
</div>
註:th:attr的用法也可以簡寫,寫成th:name、th:href等形式,都是為元素添加不同的屬性。
五、複雜表達式判斷
在實際開發中,還會出現一些複雜的表達式,Thymeleaf也能夠處理這樣的情況。下面是示例:
<div th:if="${(condition1 or condition2) and not condition3}">
<p>複雜表達式成立時,顯示的內容</p>
</div>
註:複雜表達式中,括弧的使用是尤為重要的,它可以控制表達式的優先順序。
六、小結
以上是Thymeleaf的if-else語法的詳細闡述。了解了Thymeleaf的if-else語法,我們就可以快速地開發Web應用,也可以使代碼更加的具有可讀性。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/306996.html