前言:
Themleaf在Springboot中可以将以往的JSP中JSTL表达式内容转为Th:样式,实现在HTML中的前后台传值操作,本文主要是举一些常见标签对应为themleaf格式的例子,目前只举一些用到的简单例子,日后会不断更新
1.th:text
<p style="color: red">
${msg}
</p>
${msg}放进< p >标签内,下为转化后
<p style="color: red" th:text="${msg}">
</p>
2.for each遍历
<c:forEach items="${menus.keySet()}" var="key">
<li class="nav-item">
</li>
</c:forEach>
如下c:forEach放到下一层标签中,然后去掉就可以了,此处session是后台传过来的,因为前台获取不到menus
<li class="nav-item" th:each="key : ${session.menus.keySet()}">
</li>
3.href与传值
<a class="nav-link" href="#sidebarAnalytics${key.menuId}" data-bs-toggle="collapse" role="button" aria-expanded="false" aria-controls="sidebarAnalytics${key.menuId}">
</a>
href前加上th:,然后内部用+把获取值部分隔开,其它内容用’ '包括就可以了
<a class="nav-link" th:href="'#sidebarAnalytics'+${key.menuId}" data-bs-toggle="collapse" role="button" aria-expanded="false" th:aria-controls="'sidebarAnalytics'+${key.menuId}">
</a>
此外还有一种href格式
<a href="<%=request.getContextPath()%>${key.url}" >
去掉前半部分,留下传值就可以
<a th:href="${key.url}">
4.其它传值
<i class="ti ti-${key.icon} menu-icon"></i>
原理同上面一样,都是单引号加号隔开就可以
<i th:class="'ti ti-'+${key.icon}+' menu-icon'"></i>
总结目前用到的就只是${ }模式来传值的标签需要转换,此外还有JSP动态包含的部分,有待日后更新