1、抽取公共片段
<div th:fragment="copy"> © 2011 The Good Thymes Virtual Grocery </div>
2、引入公共片段
- ~{templatename::selector}:模板名::选择器
- ~{templatename::fragmentname}:模板名::片段名
引入方式:
<!--将公共片段整个插入到声明引入的元素中-->
<div th:insert="footer :: copy"></div>
<!--将声明引入的元素替换为公共片段-->
<div th:replace="footer :: copy"></div>
<!--将被引入的片段的内容包含进这个标签中-->
<div th:include="footer :: copy"></div>
效果:
<!--th:insert-->
<div><footer> © 2011 The Good Thymes Virtual Grocery </footer> </div>
<!--th:replace-->
<footer> © 2011 The Good Thymes Virtual Grocery </footer>
<!--th:include-->
<div> © 2011 The Good Thymes Virtual Grocery </div>
注意:
- 如果使用th:insert等属性进行引入,可以不用写~{}:
- 行内写法可以加上:[[{}]];[({})]
举例
(一) ~{templatename::fragmentname}:模板名::片段名的方式
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0" th:fragment="head">
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">[[${session.loginUser.username}]]</a>
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
<ul class="navbar-nav px-3">
<li class="nav-item text-nowrap">
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">退出</a>
</li>
</ul>
</nav>
引入:
<div th:replace="dashboard::head"></div>
(二)~{templatename::selector}:模板名::选择器的方式
<nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0" id="top">
<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">[[${session.loginUser.username}]]</a>
<input class="form-control form-control-dark w-100" type="text" placeholder="Search" aria-label="Search">
<ul class="navbar-nav px-3">
<li class="nav-item text-nowrap">
<a class="nav-link" href="http://getbootstrap.com/docs/4.0/examples/dashboard/#">退出</a>
</li>
</ul>
</nav>
引入:
<div th:replace="~{dashboard::#top}"></div>
3、引入片段时传入参数
<!--引入侧边栏-->
<div th:replace="common/frag::left(activeUrl='main.html')"></div>