【问题标题】:AEM clienlibs consolidationAEM 客户库整合
【发布时间】:2016-11-03 09:22:36
【问题描述】:

我指的是adobe blog 根据标准指南,我们需要在 /etc/design/app/clientlibs 中嵌入所有特定于组件的客户端库。完成后,所有客户端库将合并到一个调用中。

如果我们这样做,我有一个问题,AEM 是否不会在页面加载时调用所有客户端库,这不会影响首页加载时的性能吗?当然,后续调用会更轻?

还有什么方法可以让我仅在作者创建/编辑内容时或仅在作者模式下加载创作特定的客户端库?

【问题讨论】:

    标签: aem client-library


    【解决方案1】:

    如果我们这样做,我有一个问题,AEM 不会调用所有客户端库吗 在页面加载时,这不会影响第一页加载的性能吗? 当然,后续调用会更轻?

    目的是避免对您包含在代码中的每个单独的库/JS 进行多次网络调用。通过有效的压缩/缩小,尺寸得到优化。

    要回答您的问题,需要权衡取舍,但从长远来看是有益的。在大多数情况下,有了调度程序和 CDN,第一次加载是唯一的瓶颈。

    还有什么方法可以让我加载创作特定的客户端库 仅在作者创建/编辑内容时或仅在作者模式下?

    您可以并且应该仅在创作实例上包含创作客户端库,您可以通过在包含创作客户端库之前放置编辑模式检查来做到这一点。

    查看/libs/wcm/foundation/components/page/author.html,它会检查编辑模式以包含编辑/创作库 -

    <sly data-sly-use.wcmInit="initwcm.js"
          data-sly-use.clientLib="${'/libs/granite/sightly/templates/clientlib.html'}"
          data-sly-test="${!wcmInit.wcmmode.disabled && wcmInit.isTouchAuthoring}" data-sly-call="${clientLib.all @ categories='cq.authoring.page'}" />
    <sly data-sly-test="${!wcmInit.wcmmode.disabled && !wcmInit.isTouchAuthoring}" data-sly-call="${clientLib.all @ categories='cq.wcm.edit'}" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-04
      相关资源
      最近更新 更多