我想检索一些属性,例如jcr:使用Sightly或任何相关语法为AEM自适应形式的面板组件创建。 1
我以前尝试检索crx / de属性的Sighlty语法包括:
${properties.jcr:created}
${pageProperties\[jcr:created\].getTime.toString}
${guidePanel.jcr:created}
${resource.jcr:created}]
我尝试了以下语法,但是无法从属性中检索值,在最坏的情况下,该组件可能无法在屏幕上呈现。
我在Adobe论坛站点上查找了其他人可能会问到的stackoverflow问题。我已经尝试了解决方案并给出了答案,但无法获得结果。如果您遇到类似的问题或以前曾尝试解决类似的问题,对您的帮助或分享适用的知识,我将不胜感激。谢谢!
答案 0 :(得分:0)
您总是可以用Java或Javascript创建Use类来访问这些属性,它更干净且可测试。更好的是,您可以使用更易读和易于实现的Sling模型,这是一个很好的演示https://www.slideshare.net/accunitysoft/understanding-sling-models-in-aem
答案 1 :(得分:0)
资源属性是可读的,无需任何额外的定义。 因此,您可能需要通过添加以下命令来检查组件中处理了哪些资源:
${resource.path}
然后,您可以在CRXDE中检查返回的路径,如果该路径上确实有jcr:created属性可用-如果您正在访问具有正确吊索资源类型的资源,则应为这种情况。然后,此调用应提供有效的返回值:
${resource.path} ___ created:
${properties.jcr:created.getTime.toString}
如果该路径也未显示,则可以发布