java - print - Thymeleaf-Cómo hacer un bucle de una lista por índice
thymeleaf session (2)
Thymeleaf th:each
permite declarar una variable de estado de iteración
<span th:each="task,iter : ${foo.tasks}">
Luego, en el bucle puede consultar iter.index
e iter.size
.
Ver Tutorial: Uso de Thymeleaf - 6.2 Mantener el estado de iteración .
¿Cómo puedo hacer un bucle por índice?
Foo.java
public Foo {
private List<String> tasks;
...
}
index.html
<p>Tasks:
<span th:each="${index: #numbers.sequence(0, ${foo.tasks.length})}">
<span th:text="${foo.tasks[index]}"></span>
</span>
</p>
Tengo error parse
org.thymeleaf.exceptions.TemplateProcessingException: Could not parse as each: "${index: #numbers.sequence(0, ${student.tasks.length})}"
Thymeleaf siempre declara la variable de estado de iteración implícita si la omitimos.
<span th:each="task : ${foo.tasks}">
<span th:text="${taskStat.index} + '': '' + ${task.name}"></span>
</span>
Aquí, el nombre de la variable de estado es taskStat
que es la agregación de la task
de variable y el sufijo Stat
.
Luego, en el bucle, podemos hacer referencia a taskStat.index
, taskStat.size
, taskStat.count
, taskStat.even
y taskStat.odd
, taskStat.first
y taskStat.last
.
Fuente: Tutorial: Usar Thymeleaf - 6.2 Mantener el estado de iteración