cq5包含另一个组件内的组件

时间:2016-01-15 16:22:19

标签: extjs cq5

我通常使用<cq:include path="fakepath" resourceType="/project/components/testcomponent" />在另一个组件中包含一个组件,将其命名为&#34; setComponent&#34;。

假设,&#34; setComponent&#34;拖放到页面上,尚未输入任何数据。

问题1:

首先是&#34; testcomponent&#34;资源在/ content树页面级别不存在,我看到GET请求&#34; fakepath.infinity.json&#34;当我双击&#34; testcomponent&#34;输入数据,此GET请求失败(浏览器开发人员工具控制台中出现404错误)。 不确定,这是否是预期的行为。

问题2:

我如何包含组件&#34; / apps / project / components / testcomponent&#34; 在使用以下标记的父组件内部?

<sling:include path="" />
<sling:include resource="" />
<sling:include path="" resourceType="" />

我正在教育自己正确理解并试图查看吊索:包括可以摆脱我正在谈论的404错误。

谢谢你, 斯

<%@include file="/libs/foundation/global.jsp"%>
<div>
     <cq:include path="navMenu"       
      resourceType="sampleproj/components/common/testMenu" />
</div>

testMenu jsp的伪代码:

  <%@page session="false"%>
  <%@include file="/libs/foundation/global.jsp"%>
  <%@ page import="com.day.cq.commons.Doctype,
    com.day.cq.wcm.api.PageFilter,
    com.day.cq.wcm.foundation.Navigation" %>
  <ul class="nav">
      <li><a href='navitempath.html'><div>navitemtitle</div></a></li>
  </ul>

2 个答案:

答案 0 :(得分:0)

尝试删除额外的&#39; /&#39;来自resourceType的符号

<cq:include path="fakepath" resourceType="project/components/testcomponent" />

答案 1 :(得分:0)

如果使用sling:include,则从其他路径加载现有节点。 例如 : <sling:include path="./mycomponentpath" resourceType="/apps/company/components/componentName"/>

mycomponentpath是先前创建的节点,您将在实际组件中注入此内容。

如果您想要包含其他组件中的空组件,可以使用<cq:include path="fakepath" resourceType="/project/components/testcomponent" />

我需要更多信息来帮助您。你能复制一下testcomponent jsp吗?