我可以更改硬代码ID吗?如何在UI5框架加载的数据sap ui库中指定库?
在SAP help中解释了UI5引导逻辑:引导:在HTML页面中加载和初始化SAPUI5。
但是,我的同事问我一个问题:下面的脚本id是硬编码的。我可以把它的id改成其他值吗?
答案是肯定的。例如,下面的id仍然有效。
为了解释这种行为,物联网产品,我们必须更详细地了解UI5引导过程。
如何找到研究的起点?
使用硬编码关键字"sap ui bootstrap"执行全局搜索,在搜索结果上设置断点,如下第14893行。
刷新应用程序并触发断点。通过函数的注释,我们可以知道它负责解析我们在中定义的引导脚本节点索引.html确定资源根。
UI5框架确定脚本标记是否为"bootstrap"标记的逻辑是通过三个正则表达式求值来完成的(请参阅变量recoverigator、reBootScripts和在下面的屏幕截图中重新资源)。
只有当所有三个计算都失败时,低价云服务器,框架才会将脚本标记id与硬编码id"sap ui bootstrap"进行比较,作为最后的手段。
在我的例子中,虽然我将id更改为"HelloWorld",但第二个正则表达式仍然成功,大数据中心是什么,因此成功确定了资源根,大数据行业分析,不需要走到最后一步—如果要将ID与硬编码值进行比较
另一个问题是:我已经将"data sap ui libs"属性中要使用的所有库指定为纯字符串值,UI5 framework如何解析这个字符串并逐个加载库?
由于bootstrap脚本标签是通过正则表达式成功确定的,企业内部软件,现在它的属性已经准备好解析了。
要加载的库的纯字符串值存储在oCfg.libs文件.
下面突出显示的代码解析字符串并将库名称转换为数组:配置模块.
这些库由39294行函数加载库: