我有一个表组件,每个单元都必须有一个parsys(允许作者删除文本,图像等)。该parsys必须在其中包含一个定制的文本组件(内部)作为默认值。
在Sightly我尝试了以下但没有结果:
<sly data-sly-resource="${'table-col-header-{0}' @ format=[column], resourceType='/libs/wcm/foundation/components/parsys'}">
<sly data-sly-resource="${'table-col-header-text-{0}' @ format=[column], resourceType='/apps/componentlibrary/components/content/text'"/>
</sly>
答案 0 :(得分:2)
根据行/列的实际限制,我要么选择cq:template节点方法,要么选择包含预定义组件的功能的parsys扩展。 OOTB分析仅包括模板预定义的内容(页面模板或组件特定模板)
cq:template节点方法包括在组件定义下添加一个节点,该节点包含它应具有的结构。这将允许您为每个单元格预定义文本组件(或其他内容)。但这需要对行和列进行有限限制。如果通过sidekick添加一个组件(我也相信touchUI,但不是100%肯定),它会将此节点的整个结构复制到您的组件位置。在您的情况下,这将意味着每个行/列都将被复制,并且将导致repo中的节点数量超过您实际需要的数量(大多数时间)。只要限制相当低,这种方法就可以了。请注意,如果您要包含此表,则此方法不起作用。组件直接在另一个组件内。
第二种方法要求您扩展parsys组件以使其更加智能化[&#39;并提供默认&#39;项目。这更灵活,但也可以处理Adobe对该组件所做的更改/增强。
答案 1 :(得分:0)
根据specification,data-sly-include
应与脚本一起使用。