在AdobeCQ(AEM)中,如何在sightly中使用'data sly list'和'data sly resource'遍历资源列表?
在AEM 6.1中,结构如下:在AdobeCQ(AEM)中,如何在sightly中使用'data sly list'和'data sly resource'遍历资源列表?,aem,sightly,Aem,Sightly,在AEM 6.1中,结构如下: - Page - form node - parsys - node 1 - node 2 - ... - node n 原始表单具有以下代码,可以正常工作 我正在尝试更新在最后一个节点n之前注入内容的表单组件。在表单节点上,我有以下代码: <div data-sly-list.children="${resource.listChildren}"> <div
- Page
- form node
- parsys
- node 1
- node 2
- ...
- node n
原始表单具有以下代码,可以正常工作
我正在尝试更新在最后一个节点n
之前注入内容的表单组件。在表单节点上,我有以下代码:
<div data-sly-list.children="${resource.listChildren}">
<div data-sly-list.fields="${children.listChildren}">
<div data-sly-test=${fieldsList.last}> DO SOMETHING BEFORE LAST NODE</div>
<div data-sly-resource="${fields}"></div>
</div>
</div>
在最后一个节点之前做一些事情
数据资源
似乎导致服务器挂起,在浏览器等待响应时cpu使用率非常高。我必须终止服务器进程并重新启动它
我尝试了
,但它似乎没有按预期呈现字段
这是迭代节点的正确方法吗
更新:查看massive error.log文件,CPU峰值似乎是由递归TooDeepException的无限循环引起的,我不知道递归在哪里 根据,您需要传入资源的路径,可以是相对路径,也可以是绝对路径。通过将
更改为
,我可以使您的代码正常工作
在最后一个节点之前做一些事情
如果您还没有下载,我强烈建议您测试和调试这样的场景。我将创建一个Sling模型,并将子节点的数据作为列表返回
查看此链接以获取参考如果节点包含对自身(或其父节点)的引用,通常会发生这种情况。感谢@awadheshv的回复。我在CRX中看不到包含自身引用的节点。另外,通过添加
@resourceType=fileds.resourceType
它输出输入组件,但没有完全呈现(缺少输入标签等)。你就是那个人!添加“.path”修复了该问题!如果服务器可以在日志中添加更有意义的内容,而不是显示部分工作的页面,那就太好了。谢谢Danil的回答。
<div data-sly-list.children="${resource.listChildren}">
<div data-sly-list.fields="${children.listChildren}">
<div data-sly-test=${fieldsList.last}> DO SOMETHING BEFORE LAST NODE</div>
<div data-sly-resource="${fields.path}"></div>
</div>
</div>