Sapui5 何时将jQuery.sap.registerModulePath()用于示例?

Sapui5 何时将jQuery.sap.registerModulePath()用于示例?,sapui5,Sapui5,我已经阅读了上述SAPUI5文档,但我无法清楚地理解其用法。还有sap.ui.localResources()和jQuery.sap.registerModulePath()之间的区别是什么?什么时候使用 如果有人能用一个简单的例子来解释,那将非常有帮助。我们还可以使用jQuery.sap.registerModulePath()来加载mockData吗?如果您在中或中使用resourceRoots,您一直在使用resourceRoots中定义的每个键值对作为参数传递给该静态方法 例如,inde

我已经阅读了上述SAPUI5文档,但我无法清楚地理解其用法。还有
sap.ui.localResources()
jQuery.sap.registerModulePath()
之间的区别是什么?什么时候使用


如果有人能用一个简单的例子来解释,那将非常有帮助。我们还可以使用
jQuery.sap.registerModulePath()
来加载mockData吗?

如果您在中或中使用
resourceRoots
,您一直在使用
resourceRoots
中定义的每个键值对作为参数传递给该静态方法

例如,index.html中可能有类似的内容:


UI5然后全局注册名称空间(
“my.app”
)作为引用,表示“每当在解析其他模块名称时提到该名称,我都应该在注册路径中查找目标模块”,在本例中,该路径是相对于当前的
document.location.href

上述代码与直接调用jQuery.sap.registerModulePath(“my.app”、“/”)[1]相同

  • 在这里,我们可以传递用户定义的URL前缀。例如:
    “./”
    而不是
    “/”
    ,如果项目中有另一个*.html文件,则需要使用该文件
  • 如果我们有一个更深层次的模块,例如在
    custom/control/somewhere/c3/chart/
    中,我们可以注册另一个名称空间:
    “my.app.c3chart”:“/custom/control/somewhere/c3/chart”
    ,然后
    • 将其用作快捷方式,例如在XMLView定义中:
      xmlns:c3=“my.app.c3chart”
      而不是
      xmlns:c3=“my.app.custom.control.somewhere.c3.chart”
    • 通过在模块文件更改其层次结构级别时仅更改注册路径来降低维护成本。命名空间
      “my.app.c3chart”
      仍然可以在任何地方使用
[1] :从1.58开始,API已弃用。手动注册名称空间时,应使用API:

sap.ui.loader.config({
路径:{
“我的/另一个应用程序”:https://example.com/somePath/anotherApp"
}
});

sap.ui.localResources()和jQuery.sap.registerModulePath()之间有什么区别

以下是实际工作的现状:

sap.ui.localResources=函数(sNamespace){
jQuery.sap.registerModulePath(sNamespace,“./”+sNamespace.replace(/\./g,“/”);
};
就这样。它立即调用
jQuery.sap.registerModulePath
,并将命名空间中的点(如果有)替换为
“/”

  • 我们无法传递任何用户定义的URL前缀
  • 名称空间与实际的文件夹层次结构和名称紧密耦合
  • 此API的使用情况(适用于非独立应用程序)
  • API参考文件提到此API将被淘汰