在component.js中加载客户sapui5库

时间:2016-04-22 13:58:40

标签: javascript sapui5

根据此处的文件:

我使用以下文件构建以下文件夹结构:

  • /my/themes/sap_bluecrystal/library.css
  • /my/library.js
  • /my/Square.js

现在我问我如何正确加载库(在Component.js中)。 我尝试在Component.js

中跟随
jQuery.sap.registerModulePath("my", "./my");

在某些观点中:

jQuery.sap.require("my.Square");
...
new my.Square({
 text : "Test",
 size : "200px"
})

总而言之,Square控件似乎可用,但是根本没有加载library.js和library.css。

知道怎么做对吗?

如果应用程序在Fiori Launchpad中运行,则在index.html中使用bootstrap XML代码将无效。

Bonus问题:在SAP中部署自定义库以供多个应用程序使用的位置?一个想法(但可能是错的)是创建一个只包含库代码的BSP应用程序?

2 个答案:

答案 0 :(得分:1)

加载库的正确方法是(而不是jQuery.sap.require):

sap.ui.getCore().loadLibrary("my");

这将加载" library-preload.json"文件(如果可用),还包括主题资源。

请参阅https://openui5.hana.ondemand.com/#docs/api/symbols/sap.ui.core.Core.html#loadLibrary

答案 1 :(得分:0)

我可以为自己解决的第一个问题: 替换

jQuery.sap.require("my.Square");

jQuery.sap.require("my.library");

第二个问题仍然存在:)