AEM版本:6.3.2.0
我们正在对我们的网站进行一些性能优化,因此我们推迟使用defer
属性的所有JS脚本来阻止这些脚本进行渲染阻止。我们很自然地使用contexthub,我们看到以下脚本:
<script src="/etc/cloudsettings/default/contexthub.kernel.js" type="text/javascript"></script>
我们要将defer
属性添加到该脚本中;查看JSP时,呈现此脚本:/libs/granite/contexthub/components/contexthub/contexthub.jsp
我们看到唯一的选择是覆盖该JSP,这不是一个很好的选择,特别是如果Adobe在将来的版本中对该JSP进行更改。
免责声明:我对上下文中心并不十分熟悉。
以下是我的问题:
contexthub.kernel.js
是否有任何弊端?即它是否有充分理由进行渲染阻挡?contexthub.kernel.js
依赖于其他代码,例如Granite.HTTP.externalize
,我在代码库中看到这些依赖项包含在不同的clientlib中。这些依赖项通常如何包含在内?我找不到任何相关的文档。我假设脚本应该是无依赖的,因为它已经包含了jQuery和其他东西。非常感谢任何帮助。谢谢!
请注意,我在Adobe论坛上创建了一个重复的问题:https://forums.adobe.com/message/10451961