【问题标题】:Set begin index in freemarker list在 freemarker 列表中设置开始索引
【发布时间】:2020-04-06 05:05:23
【问题描述】:

如何在freemarker列表中设置开始索引?

喜欢jstl

<c:forEach var="item" items="${screenshot.results}" begin="2">
    <a href="${item.image}"
       class="fresco"
       data-fresco-group="game-detail-pic">
    </a>
</c:forEach>

我想从第二个索引开始。

【问题讨论】:

    标签: spring spring-boot jsp templates freemarker


    【解决方案1】:

    你可以使用sequence内置

    应用内置序列允许所有序列操作,例如 seq[index]、seq[range] 或 seq?size。如果这些操作直接应用于从集合转换的序列,则 FreeMarker 会优化在内存中实际创建序列。因此,无论过滤后的 hugeTable 大小如何,这些都不会消耗太多内存:

    hugeTable?filter(predicate)?sequence[index]:FreeMarker 只会获取并删除元素,直到它到达所需位置的元素。

    hugeTable?filter(predicate)?sequence[0..9]:FreeMarker 只会收集前 10 个元素。

    例子:

    <#assign a=[1,2,3,5,6]>
    <#list a?filter(x ->  x > 0)?sequence[1..4] as x>${x} </#list>
    

    【讨论】:

    • 非常感谢!!
    猜你喜欢
    • 1970-01-01
    • 2012-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    相关资源
    最近更新 更多