当前位置: 首页 > 知识库问答 >
问题:

AEM获取子节点内容

聂永怡
2023-03-14

你如何获得子节点内容与JavaScript具体?

我可以通过以下方式获取父节点信息:

花岗岩资源属性

但是我需要访问子节点

-家长

--子对象(命名图像)

有很多方法可以通过Java访问子节点,但我正在构建一个只使用JavaScript的解决方案:

下面是Java示例

for (Node n1 : JcrUtils.getChildNodes(node)){
  String imagePath = n1.getPath().toString();
  Resource imageResource = resourceResolver.getResource(imagePath);
  Node imageNode = imageResource.adaptTo(Node.class);
  ValueMap imageNodeProps = imageResource.adaptTo(ValueMap.class);
  String imageName = null;
  imageName= imageNodeProps.get("fileReference", "None");

共有3个答案

霍书
2023-03-14

您可以在代码之间使用console.log()并检查error.log中的值

function(nodeInfo) {
    /* from current node, get the children nodes */
    nodeInfo.childrenNodes = currentNode.getNodes();
    if(typeof nodeInfo.childrenNodes != "undefined") {

        for(var childrenNode in nodeInfo.childrenNodes) {
             /*iterate through children nodes, get specific 'child' node */
             if(childrenNode === "specificChildNode") {
                 /* if required property is present, get that property */
                 if(nodeInfo.childrenNodes[childrenNode].hasProperty("requiredProperty")){
                    nodeInfo.reqProp = nodeInfo.childrenNodes[childrenNode].getProperty("requiredProperty");
                 } 
             }
         }
    }
    return nodeInfo;
};
许学真
2023-03-14

使用AEM附带的图像基础组件有助于获得如何访问te数据的指导。对我来说,做一些修改并让它按预期工作只是一件事。你可以在这里找到AEM图像组件:

/libs/wcm/foundation/components/image/

浏览提供的不同文件以获取更多信息。

司空通
2023-03-14

我不知道如何获得子节点属性,但也许我有类似的问题,因为我想在组件中使用一个图像。我试图将图像设置为子节点,但没有成功,因为我不知道如何访问它。我最终使用css加载图像。

 类似资料:
  • 这似乎是一个相当简单的问题,但我已经为此绞尽脑汁好几个小时了。我有一个类似于下面的节点结构: 我需要从子节点收集三种类型的属性:一种是字符串、布尔值和字符串数组。我认为下面的sql2查询可以工作并获得它们的属性,但无论出于什么原因,我都会得到一个错误: 查询 错误: 感谢您的帮助,因为我已经在这几天了。

  • 你们这些家伙,我有这样一个HTML: 这是将上述所有选项放入列表的代码: 实际上它不起作用。我不知道我错在哪里。请帮帮我。非常感谢。

  • 本文向大家介绍JS 获取HTML标签内的子节点的方法,包括了JS 获取HTML标签内的子节点的方法的使用技巧和注意事项,需要的朋友参考一下 子节点的个数: 注意: 标签开/闭合算2个节点 第几个子几点: 示例: 这里是 length-4 处,margin-left:20px 输出:length=8 实例: 以上就是小编为大家带来的JS 获取HTML标签内的子节点的方法的全部内容了,希望对大家有所帮

  • 问题内容: 我想知道,JavaScript提供了多种方法来从任何元素中获取第一个子元素,但是哪种方法最好呢?最好的意思是:在行为方面,大多数跨浏览器兼容,最快,最全面且可预测。我用作别名的方法/属性的列表: 这适用于两种情况: 在表单或迭代的情况下。如果我可能遇到文字元素: 据我所知,使用来自的NodeList ,并使用。我将这一假设基于MDN参考: 是对元素节点的第一个子元素的引用,或者如果不存

  • 问题内容: 使用v0.13.0中引入的方法,我可以通过映射到来获取传递给父级的每个子组件的DOM节点。 但是,如果某些子项恰好是React Elements而不是Components(例如,其中一个子项是通过JSX创建的),则React会引发不变的违规错误。 挂载后,是否有一种方法可以获取每个子级的正确DOM节点,而不管该子级是什么类? 问题答案: 应该是一个ReactElement或一个Reac