html - Sightly:迭代一个列表并使用其索引打印另一个列表(不嵌套,只是共享索引)

标签 html list aem sightly htl

我眼前有 2 个列表。对象 allList 内的 list1 和 pathList

<div data-sly-list.list1="${allList.list1}">
    <img src="soemthing">
    <a href="XXXXXXXXX">${list1}</a>
</div>

在我写下“XXXXXXXXX”的地方,我需要放置类似的内容

${pathList['list1List.index']}

或者

${allList.pathList['list1List.index']}

所以,基本上我想使用第一个列表的索引迭代第二个列表,并且我不能使用嵌套循环。

但是每当我尝试使用上面提到的语法时,我都会收到模板解析错误,因为语法错误。请有人指导我如何实现这一目标。

最佳答案

您必须使用不带“”的索引,如下所示:${allList.pathList[list1List.index]}

示例:

@Model(adaptables = Resource.class)
public class TestModel {

    @Inject
    Resource resource;

    private String[] abc = {"a", "b", "c"};
    private String[] def = {"d", "e", "f"};
    ...
}

HTL:

<sly data-sly-list.first="${model.abc}">
    <p>Test: ${first}  -  ${model.def[firstList.index]}</p>
</sly>

输出 HTML:

<p>Test: a  -  d</p>
<p>Test: b  -  e</p>
<p>Test: c  -  f</p>

关于html - Sightly:迭代一个列表并使用其索引打印另一个列表(不嵌套,只是共享索引),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54684830/

相关文章:

javascript - 滑动接触形式 - 速度问题

javascript - 具有 Promise 方法的等待函数

java - 如何在java中实现抽象和泛型?

java - AEM 6.1 Sightly Java 类不会在构建时更新

java - 如何更改 Adob​​e AEM 中 Runnable 类的权限?

javascript - 试图在井字游戏中设置一个 Action ,但是当我回调该函数时我一直未定义

javascript - 我如何使用 jquery 删除 "Read more"?

python - 如何从字典键列表中提取特定项目

python - 访问排序嵌套列表的第一个元素以获取第二小的第二个元素

aem - cq5 对话框在增加尺寸后不会改变其宽度