2017-08-04 96 views
0

我是新來的Thymeleaf,我想知道是否標籤th:插入th:取代絕對需要引用一個片段。是否正確使用th:replace/th:insert而不使用碎片?

下面是一個例子,我想包括父模板裏面整個頁面menu.html

<!DOCTYPE html> 
<html> 
    <body> 
     <th:block th:replace="child/menu"></th:block> 
    </body> 
</html> 

這裏是孩子的菜單模板menu.html

<ul> 
    <li>Menu 1</li> 
    <li>Menu 2</li> 
</ul> 

它工作正常,但我沒有在文檔中找到像這樣的任何示例,每個參考th:替換使用這樣的片段調用th:replace="child/menu :: menu",所以我想知道如果我的代碼是正確的

回答

1

你的代碼是好的。簡單的證明就是試圖將嵌入的網頁中使用Thymeleaf表達式:

<ul> 
    <li th:text="${attrValue}"></li> 
</ul> 

如果你通過你的初始模板attrValue模型屬性,如果沒有問題的作品。您甚至不必在您的menu.html頁面中指定Thymeleaf模式URL。

+0

是的我知道它的工作原理,我目前使用它,並沒有錯誤。在他們的文檔中,他們使用'th:replace'系統地分割片段,所以我想知道我的代碼是否符合框架並且不是一個壞習慣 –

+1

也許你應該只添加帶有Thymeleaf模式URL的HTML標籤,就像Thymeleaf表達式可以被現代IDE認可。但我沒有看到你的方法有任何特別的問題。 –