我通常使用<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>
答案 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吗?