首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Alfresco调试

Alfresco调试
EN

Stack Overflow用户
提问于 2016-09-08 08:45:35
回答 1查看 1.2K关注 0票数 4

在Alfresco共享中,搜索页面是用Aikau实现的。我感兴趣的是一个更普遍的问题,是否有可能调试Aikau部件?

我已经建立了一些关于这个问题的链接,但是他们谈论的更多的是日志,而不是实际的javascript调试:

假设我有以下Aikau小部件alfresco/search/AlfSearchResult及其内部的以下方法:

代码语言:javascript
复制
/**
       * This function is called to create a 
       * [SearchResultPropertyLink]{@link module:alfresco/renderers/SearchResultPropertyLink} widget
       * to render the displayName of the result. It can be overridden to replace the default widget 
       * with a reconfigured version. 
       * 
       * @instance
       */
      createDisplayNameRenderer: function alfresco_search_AlfSearchResult__createDisplayNameRenderer() {
         // jshint nonew:false
         var config = {
            id: this.id + "_DISPLAY_NAME",
            currentItem: this.currentItem,
            pubSubScope: this.pubSubScope,
            propertyToRender: "displayName",
            renderSize: "large",
            newTabOnMiddleOrCtrlClick: this.newTabOnMiddleOrCtrlClick,
            defaultNavigationTarget: this.navigationTarget
         };
         if (this.navigationTarget)
         {
            config.navigationTarget = this.navigationTarget;
         }
         new SearchResultPropertyLink(config, this.nameNode);
      }

我是否可以在使用this.currentItem的行插入断点并停止执行,以便评估它的属性?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-08 10:06:18

是的,有几种方法可以调试Aikau.首先要做的是确保在启用了“客户端调试”模式的情况下运行(无论是在共享模式中还是在自定义的Aikau客户端中)。

例如,在共享中,您可能希望更新/WEB-INF/classes/alfresco/share-config.xml文件以更改:

代码语言:javascript
复制
<config>
  <flags>
     <client-debug>false</client-debug>

...to是..。

代码语言:javascript
复制
<config>
  <flags>
     <client-debug>true</client-debug>

您需要重新启动共享以使更改生效。然后,您将看到主标题菜单栏中有一个“调试菜单”项。如果您打开它,您可以通过切换“调试日志”和“显示所有日志”来启用日志记录。

这将导致日志输出出现在浏览器开发工具控制台中。您还可以微调日志输出,使其只显示错误或警告,并提供一个RegEx表达式来匹配某些日志输出。

启用客户端调试后,浏览器加载的JavaScript源将被解压缩。这将使您更容易添加断点。

因为Surf将所有所需的模块源代码聚合到一个单独的资源中(出于性能和缓存的原因),您将希望找到Aikau源文件--最简单的方法是使用“CTRL”(在Chrome中)打开一个资源,并在出现的框中键入“冲浪”--这将始终首先找到Aikau源代码。

Firefox的Firebug更好地处理跨资源的查找,因此您可以只使用“CTRL”,然后粘贴到您想要打开的行中。

您可以像往常一样在此资源中添加断点,浏览器将在其上中断。

除了设置断点之外,还可以使用DebugLog小部件。这可以从“调试菜单”中切换,并显示正在进行的所有发布和订阅。

在开发过程中,还可以直接在页面中包含和配置alfresco/services/LoggingServicealfresco/logging/DebugLog小部件。对于我们所有的单元测试页面,我们都采用这种方法。在开发过程中,这可能是一种方便的方法,并且在开发完成后可以删除它们。

这个介绍性虽然很旧,但也包含一些有用的调试技巧(参见幻灯片56 )。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39386412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档