使用sap.ui.define在控制器中预加载库

2020-09-01 09:09发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我们正在使用viz控件来构建图表,并且我观察到我们正在使用同一库中的32个控件。

但是我无法在索引html或引导程序级别进行库预加载,因为我们正在使用的框架已在多个应用程序中重复使用,并且其中许多未使用viz库。

因此,我尝试在使用图表的控制器中加载library-preload.js。 下面是相同的代码段。

请建议使用这种方式是否合适。

 sap.ui.define([" sap/ui/core/mvc/Controller"," sap/m/IconTabFilter"," sap/ui/model/json/JSONModel"," sap/viz/library-preload  "],函数(控制器,
 IconTabFilter,JSONModel,vizLib){


 }); 

由于所有必需的控件都被加载到一个文件中,因此避免了30个以上的请求。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我们正在使用viz控件来构建图表,并且我观察到我们正在使用同一库中的32个控件。

但是我无法在索引html或引导程序级别进行库预加载,因为我们正在使用的框架已在多个应用程序中重复使用,并且其中许多未使用viz库。

因此,我尝试在使用图表的控制器中加载library-preload.js。 下面是相同的代码段。

请建议使用这种方式是否合适。

 sap.ui.define([" sap/ui/core/mvc/Controller"," sap/m/IconTabFilter"," sap/ui/model/json/JSONModel"," sap/viz/library-preload  "],函数(控制器,
 IconTabFilter,JSONModel,vizLib){


 }); 

由于所有必需的控件都被加载到一个文件中,因此避免了30个以上的请求。

付费偷看设置
发送
2条回答
SC_Yao
1楼-- · 2020-09-01 09:19

您好 Pradeep TN

您无需加载预加载 文件。 UI5框架自动发送一个请求并为我们加载。 因此,只需使用普通的名称空间就足够了。

您的代码看起来不错,一旦加载了特定的视图,它将加载请求。 如果要在需要时手动加载库,请使用它。

https://ui5.sap.com/#/api/sap.ui/methods/sap.ui.require

否则,您也可以在 manifest.json,但将惰性传递为true。 因此,只有在需要viz框架时,才会加载它。

https://ui5.sap .com/#/topic/8521ad1955f340f9a6207d615c88d7fd

谢谢

马赫什语

大道至简
2楼-- · 2020-09-01 09:20

您好 Pradeep TN

请参见下面的示例,他们只是使用了" sap.viz":{}

https://ui5.sap.com/#/entity/sap.viz.ui5.controls.VizFrame/sample/sap.viz.sample.Area/code/manifest.json

您可以通过 延迟为true,它不会立即加载,只要应用程序请求ui5资源,它将立即加载它。 检查我的原始答案链接以获取更多信息。

现在上面的代码将发送一个请求,以自动加载sap.viz的预加载文件,您无需明确提及,我怀疑它是否有效

谢谢

Mahesh

一周热门 更多>