问题
I have a list called 'notifications' and I use Thymeleaf 'each method' to access its elements one by one. I can do this successfully as below.
<li th:each="n : *{notifications}">
<h4 type="text" th:text="*{n.message}"></h4>
</li>
note: 'message' is the attribute I need to retrieve from the list.
How can I access the elements in the reverse order? For an example if this is my current output,
Cat
Dog
Rat
How can I get output as this?
Rat
Dog
Cat
回答1:
I would reverse it server side, if possible. If you don't want to do that, maybe something like this would work for you:
<li th:each="i : ${#numbers.sequence(notifications.size() - 1, 0, -1)}">
<h4 type="text" th:text="${notifications[i].message}"></h4>
</li>
回答2:
If you already use 'th:each' I want to complement the Metroids answer. It may be useful to declare a local variable. Thus, the inner part of the loop will not require changes.
<li th:each="i : ${#numbers.sequence(notifications.size() - 1, 0, -1)}"
th:with="n=${notifications[i]}">
<h4 type="text" th:text="${n.message}"></h4>
</li>
来源:https://stackoverflow.com/questions/46443563/thymeleaf-how-to-loop-through-a-list-in-inverse-order