AEM:有什么办法可以在sightly 或js 中检索继承的组件属性?

问题描述

我正在尝试为 SEO 创建 href 链接。现在我的用例是我必须创建一个新的导航组件(将在子页面中继承),如果在该组件中选择了多语言,则 SEO 链接应该可见。

由于我必须在 head.html 中显示 SEO 链接,所以有什么方法可以在 sightly 或 js 中检索继承组件,以便我可以检查是否选择了多语言?

如果不是,

java 有一种使用 componentinheritancevaluemap 的方法, 如果有人能提供一个示例代码,那可能会有很大帮助。

谢谢

解决方法

子页面不会从父页面继承(通过 Sling resourceSuperType 继承),因此无法直接访问来自父树的属性。但是,您可以在 Use Object 中遍历页面树并检索这些值。这是 inherited field dialog widget implementationusage example in a component’s Sling Model 的示例。

我建议您使用 Java POJO 或 Sling Models 对象,因为它们比 JS 使用对象的性能要高得多。