AEM/CQ5如何共享组件值?

AEM/CQ5如何共享组件值?,aem,Aem,我希望有一个标题组件,可以在多个页面呈现组件之间共享。标题组件有一个文本标签。如何使此文本标签的值可用于所有页面组件 我必须将中的路径设置为通用格式吗?我可以通过在标题组件下创建类似于对话框的设计对话框来存档它。将文本标签字段添加到设计对话框。要为字段输入值,请将页面切换到design模式,然后单击组件顶部的Edit按钮。输入的值将可用于包含标题组件的所有页面。 注意:design dialog将命名为design\u dialog如果正确理解,设计模式可以很好地工作。但是,它不会以与页面激活相

我希望有一个标题组件,可以在多个页面呈现组件之间共享。标题组件有一个文本标签。如何使此文本标签的值可用于所有页面组件


我必须将
中的路径设置为通用格式吗?

我可以通过在标题组件下创建类似于
对话框的
设计对话框来存档它。将文本标签字段添加到
设计对话框
。要为字段输入值,请将页面切换到
design
模式,然后单击组件顶部的
Edit
按钮。输入的值将可用于包含标题组件的所有页面。

注意:
design dialog
将命名为design\u dialog

如果正确理解,设计模式可以很好地工作。但是,它不会以与页面激活相同的方式复制内容,因此可能会让您的作者感到困惑。此外,共享模型仅限于确切的页面类型,这可能是您所希望的粒度,也可能不是


根据CQ5的最佳实践(),他们强烈鼓励段落系统(iparsys继承/共享)<代码>名为相同的iparsys
可以在不同的页面模板之间共享(而设计模式将仅适用于单个模板类型)。

如果组件在模板中烘焙(即页面呈现组件),是的,您可以使
路径属性指向存储此数据的某个公共位置,并且无论模板的类型如何,所有页面都可以获得配置的值。

您可以创建标题组件,然后使用
将其包含在基本模板/页面中。此基础模板/页面将由所有其他模板继承。这样,在基本页面中配置的页眉可以通过不同的模板/页面组件使用。

如果目标是“跨多个页面呈现组件”共享,则只有页面共享相同的呈现组件时,设计对话框才会有帮助。 如果要在页面及其所有子页面中显示标题组件,则应使用iparsys。 如果您只想重用该头组件的属性,那么它需要有一个固定路径(cq:include in a page component),然后您可以在其他页面呈现组件中引用所需的属性。我不建议采用这种方法,因为它打破了拥有组件的想法。一切都变得紧密耦合


您还可以在页面级别保存这些属性(一些顶级父页面),然后在子页面中使用InheritanceValueMap读取这些属性。

此功能现在在ACS AEM Commons中作为共享组件属性提供-


支持标准内容激活和国际化(存储在主页下方的值)以及您希望从内容中获得的任何其他功能。

我发现这非常有用,并且在
iparsys
不足时,可以避免大量猜测。