在AEM 6.2中,我想在把手中做到这一点。
<sly data-sly-resource="${'title' @ resourceType='myproject/components/content/common/title'}"/>
具体来说,我覆盖了qnaforum.hbs并需要将其包含在那里。官方文档(link)说正确的方法是:
{{include this.id path="title" resourceType="myproject/components/content/common/title"}}
这样做有三个问题:
在同一个qnaforum.hbs文件中,Adobe为其订阅组件使用相同的include,它似乎工作正常。
{{include this.id path="subscriptions" resourceType="/libs/social/subscriptions/components/hbs/subscriptions"}}
此类型的包含仅适用于社交社区组件吗?如果是这样,我如何在把手模板中包含自定义资源?
答案 0 :(得分:0)
我帮助了其他一些面临类似问题的人。我附加了代码片段,导致您遇到的问题(消失的QnA列表),以及修复此问题。
重叠的QnAForum组件看起来像这样
{{include this.id path="qnaforum-top" resourceType="custom/components/modules/qnaforum-top"}}
{{#if-wcm-mode mode="EDIT" }}
<div class="scf-includeClientLib">{{includeClientLib js="cq.social.commons.widgets, cq.social.toggle"}}</div>
{{/if-wcm-mode}}
<div data-module="qna-index" class="scf scf-forum scf-qna " data-component-id="{{id}}" data-scf-component="social/qna/components/hbs/qnaforum">
{{!-- Other QnA code --}}
</div>
但代码应该是这样的
{{#if-wcm-mode mode="EDIT" }}
<div class="scf-includeClientLib">{{includeClientLib js="cq.social.commons.widgets, cq.social.toggle"}}</div>
{{/if-wcm-mode}}
<div data-module="qna-index" class="scf scf-forum scf-qna " data-component-id="{{id}}" data-scf-component="social/qna/components/hbs/qnaforum">
{{!-- moving line1 from previous code snippet inside this parent div}}
{{include this.id path="qnaforum-top" resourceType="custom/components/modules/qnaforum-top"}}
{{!-- rest of QnA Code }}
</div>
我所做的更改是将第一个代码段中的第1行移到第5行。
JS控制台确实说缺少HTML,但它包含在内。控制台错误的原因是包括works.We尝试获取html,如果我们无法获取HTML,我们要求吊索解析组件。