根据这里的文档:
- https://scn.sap.com/thread/3502503
- http://jsbin.com/openui5-notepad-control-with-its-own-library-used-in-xmlview/1/edit?html,output
我使用以下文件构建以下文件夹结构:
- /
- my/themes/sap_bluecrystal/library.css /
- 我的/图书馆.js /
- 我的/广场.js
现在我问我如何正确加载库(在组件.js内)。我尝试在组件中遵循.js
jQuery.sap.registerModulePath("my", "./my");
在某些观点中:
jQuery.sap.require("my.Square");
...
new my.Square({
text : "Test",
size : "200px"
})
总而言之,Square 控件似乎可用,但库.js和库.css根本没有加载。
知道如何做对吗?
在索引中使用引导 XML 代码.html如果应用程序在 Fiori Launchpad 中运行,则不起作用。
奖励问题:在 SAP 内部何处部署自定义库以供多个应用使用?一个想法(但也许这是错误的)是创建一个只包含库代码的 BSP 应用程序?
加载库的正确方法是(而不是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
我自己可以解决的第一个问题:取代
jQuery.sap.require("my.Square");
跟
jQuery.sap.require("my.library");
第二个问题仍然悬而未决:)