Thymleaf使用th:each遍历
2017-12-22 本文已影响59人
OnyWang
使用该标签完成list或map数据的遍历
后台传参
标准的springmvc传参的方式,见如下代码:
@RequestMapping(value = "/gwview.html",method = RequestMethod.GET )
public String gwview(ModelMap modelMap, HttpServletRequest request) {
modelMap.put("gwlist", gwlist);
}
解释
使用modelmap,将数据put进去即可。
前台展示
<div class="weui-cell weui-media-box_appmsg" th:each="gw,gwstate:${gwlist}">
<div class="weui-media-box__bd">
<h4 class="weui-media-box__title" th:text="${gw.name}"></h4>
<p class="weui-media-box__desc">发布人:<span>name</span></p>
</div>
<div class="search-status">
<h4 class="weui-media-box__title" th:text="${#dates.format(gw.createTime,'yyyy-MM-dd')}">2017-09-09</h4>
<p class="weui-media-box__desc green" th:text="${gwstate.first}"></p>
</div>
</div>
解释
在需要重复的地方需要加入th:each标签,注意里面两个参数gw,gwstate,目前第一个gw是定义的list里面的每一个对象,gwstate则是对象参数,注意第二个参数是thymleaf定义的,规定了如下几个参数:
- index:当前迭代对象的index(从0开始计算)
- count: 当前迭代对象的index(从1开始计算)
- size:被迭代对象的大小
- current:当前迭代变量
- even/odd:布尔值,当前循环是否是偶数/奇数(从0开始计算)
- first:布尔值,当前循环是否是第一个
- last:布尔值,当前循环是否是最后一个
当然,gw和gwstate可以自己定义名字,如果你喜欢,可以定义成fuck和fuckstate都是可以的。