Extjs AEM中的CQ.Ext对象是什么

Extjs AEM中的CQ.Ext对象是什么,extjs,aem,Extjs,Aem,我最近了解了AEM中的CQ.Ext对象,以及它在作者模式和非发布模式下的可用性 我的第一个猜测是它与extjs小部件库有关,但确切地说,CQ.Ext对象是什么,它做什么。 另外,由于Author和publish是运行模式,如果我在任何自定义运行模式下启动aem,那么这个CQ.Ext对象对我来说都是可用的。如果没有,我将如何使其在aem的自定义运行模式下可用 提前感谢。它是作为客户端库的一部分拉入的。当编写使用基础AEM LIBS的代码时,这些核心JSP中的一些代码如果将页面加载到发布模式,则将不

我最近了解了AEM中的CQ.Ext对象,以及它在作者模式和非发布模式下的可用性

我的第一个猜测是它与extjs小部件库有关,但确切地说,CQ.Ext对象是什么,它做什么。 另外,由于Author和publish是运行模式,如果我在任何自定义运行模式下启动aem,那么这个CQ.Ext对象对我来说都是可用的。如果没有,我将如何使其在aem的自定义运行模式下可用


提前感谢。

它是作为客户端库的一部分拉入的。当编写使用基础AEM LIBS的代码时,这些核心JSP中的一些代码如果将页面加载到发布模式,则将不同的客户端库拉到页面上。所以说真的,关键是在你需要使用它的时候加入它。下面是基础LIBS JSP中的一个示例代码,它显示了如何根据WCM模式有条件地包含客户端库。作为发布者运行的AEM实例将具有禁用的WCM模式,而作为作者运行的实例将具有类似“编辑”的功能:

if (WCMMode.fromRequest(request) != WCMMode.DISABLED) {
        String dlgPath = null;
        if (editContext != null && editContext.getComponent() != null) {
            dlgPath = editContext.getComponent().getDialogPath();
        }
        if (AuthoringUIMode.fromRequest(slingRequest) == AuthoringUIMode.TOUCH) {
            %><cq:includeClientLib categories="cq.authoring.page" /><%
        } else if (AuthoringUIMode.fromRequest(slingRequest) == AuthoringUIMode.CLASSIC) {
            %><cq:includeClientLib categories="cq.wcm.edit" />
...
if(WCMMode.fromRequest(请求)!=WCMMode.DISABLED){
字符串dlgPath=null;
if(editContext!=null&&editContext.getComponent()!=null){
dlgPath=editContext.getComponent().getDialogPath();
}
if(AuthoringUIMode.fromRequest(slingRequest)=AuthoringUIMode.TOUCH){
%>
...

查看GraceTrx页面并跟踪它们包含的JSP。它们将带您到其他JSP,并且沿着链的某个地方,您将看到基础JSP根据WCM模式在客户端库中的位置。

另外,请查看AEM实例中的此链接,了解当页面中包含具有依赖关系的库时,客户端库依赖关系如何导致其他客户端库被包含:/libs/granite/ui/content/dumplibs.html