spring - style - Para cada operador en Thymeleaf
thymeleaf javascript (2)
No puedo encontrar la sintaxis para crear un bucle simple para cada uno en la plantilla Thymeleaf . No estoy satisfecho con el atributo th:each="" , ya que copia la etiqueta en la que se encuentra.
Lo que busco es algo como:
<th:foreach th:each="...">
...block to be repeated...
</th>
lo que es analógico de <c:forEach items="..." var="..."> o <t:loop source="..." value="..."> en Tapestry . ¿Hay algo similar para eso?
La solución th:block es definitivamente la mejor, pero alternativamente, también puedes intentar usar th:remove="tag" para eliminar la etiqueta contenedora:
<table>
<tbody th:each="user : ${users}" th:remove="tag">
<tr>
<td th:text="${user.login}">...</td>
<td th:text="${user.name}">...</td>
</tr>
<tr>
<td colspan="2" th:text="${user.address}">...</td>
</tr>
</tbody>
</table>
El beneficio de este enfoque es que también puede pasar una expresión Thymeleaf a th:remove para eliminar solo la etiqueta condicionalmente, por ejemplo, si desea que solo algunos usuarios se incluyan en un <tbody> , además de tener otros usos interesantes.
Here está la documentación para th:remove .
Use th:block como se indica en la guía de Thymeleaf
th:block es un mero contenedor de atributos que permite a los desarrolladores de plantillas especificar los atributos que desean. Thymeleaf ejecutará estos atributos y luego simplemente hará que el bloque desaparezca sin dejar rastro.
Por lo tanto, podría ser útil, por ejemplo, al crear tablas iteradas que requieren más de una <tr> para cada elemento:
<table>
<th:block th:each="user : ${users}">
<tr>
<td th:text="${user.login}">...</td>
<td th:text="${user.name}">...</td>
</tr>
<tr>
<td colspan="2" th:text="${user.address}">...</td>
</tr>
</th:block>
</table>