thymeleaf 只渲染文字,不需要html標籤
阿新 • • 發佈:2021-08-09
眾所周知,thymeleaf支援在後端渲染html內容,如果我只想使用thymeleaf來渲染一段文字,不要其中的html標籤,如何實現?
實際業務場景:我需要建立一個簡訊模板,通過從資料庫中查詢出的資料來渲染簡訊模板,渲染後傳送。
希望能夠支援較為豐富的語法,自己寫替換${}佔位符比較難以支援陣列迴圈和if判斷語法,希望藉助thymeleaf來進行簡訊的渲染。
如果使用常見的thymeleaf 語法,我們可能會寫成:
尊敬的客戶<span th:text="${customer.name}" />, 您的<span th:text="${customer.product}"/>已經購買成功
這樣,如果 customer 物件值為 { name:"張三", product:"刑法" } 實際渲染出來的文字是“尊敬的客戶<span>張三</span>, 您的<span>刑法</span>已經購買成功”。
其實我們更想要的是“尊敬的客戶張三, 您的刑法已經購買成功”
這時可以使用 th:block 標籤來實現,block是空標籤,不顯示。(感謝大佬 http://www.yyjjssnn.cn/articles/849.html)
尊敬的客戶<span th:block="${customer.name}" />,您的<span th:block="${customer.product}" />已經購買成功