点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们!
在研究SAP UI5引导过程的过程中,有两个用于异步加载过程的参数:
data-sap-ui-async = true/false data-sap-ui-preload ="自动/异步/同步"
因此,据我了解, data-sap-ui-preload =" async" 参数只能为声明在其中的库激活异步预加载
data-sap-ui-libs =" sap.m,sap.tnt,....."
没关系。 在DevTools中,我看到了这个异步预加载。 ui5loader-dbg使用它的异步函数" loadJSResource 异步"。
如果我设置 data-sap-ui-async = true 参数,则此参数与 data-sap-ui-preload =" async" 参数相同 引导库,但它也适用于其他模块。
因此,我的引导程序使用了 data-sap-ui-async = true 参数。
我希望组件的清单文件中的库应该异步加载,但不能。
manifest.json例如有四个要预加载的库,但是在DevTools中,我看到了Sync loading ..
... " sap.ui5":{ "依赖关系":{ " minUI5Version":" 1.30.00", " libs":{ " sap.tnt":{}, " sap.gantt":{}, " sap.fileviewer":{}, " sap.ndc":{} } }
看这张照片
ui5loader-dbg也使用它的同步功能: requireSync。
我想念什么?
最诚挚的问候,Evgeny T。
(22.2 kB)
我只能异步加载Component库,这样:
我在ComponentContainer构造函数参数中添加了 manifest:" ./manifest.json"
结果是,在Component.js之前加载了Component的manifest.json,并且manifest.json中的所有库都被异步加载了:
您可以共享整个index.html吗? 该应用使用哪个UI5版本启动? 通常,如果问题中可以包含一个 mcve ,以便读者可以重现该问题,那就太好了。
手动实例化ComponentContainer时,其构造函数选项"清单"需要具有 truthy 值或它的 path (例如" somewhere/manifest.json")。 根据 API参考:
>至 激活组件及其依赖项的完全异步加载行为,清单属性需要设置为"真实"值,例如
在您的情况下,它是未定义的,导致了同步请求。
从1.58版开始,可以改为使用模块 sap/ui/core/ComponentSupport , 允许创建ComponentContainer 没有内联脚本且具有预定义的设置,从而启用 CSP 支持,首先显示和异步方法。 示例: https://embed.plnkr.co/16J1TFICxbqETCzaxuZ0
有关更多信息,请参阅API参考 。
___
PS:如果应用基于组件,则可能要删除data-sap-ui-libs =" sap.m"。 参见 data-sap-ui-libs与清单的依赖性.libs 。
# p#App已以1.77.2版本启动。
下面是没有异步加载库的代码,这些代码是在Component.js的manifest.json中声明的。
index.html