如何加载特定目录中的所有本地资源?

时间:2014-09-08 08:10:39

标签: javascript sapui5

我正在通过Openui5开发一个门户网站。我的门户有2个应用程序。我已将代码组织在文件夹中:

root
  |
  |____app1
  |____app2

例如,在app1目录中我有一些子目录(misc,fragment,master,detail)和详细文件夹我有一个子文件夹详细信息---> form。

为了工作,我的项目需要:

sap.ui.localResources("app1.misc");
sap.ui.localResources("app1.fragment");
sap.ui.localResources("app1.master");
sap.ui.localResources("app1.detail");
sap.ui.localResources("app1.detail.form");

我想写一个函数getPaths(dir)

var aPaths= getPaths("app1");
for( var i = 0; i < aPaths.length; i++) {
      var path=aPaths[i];
      sap.ui.localResources(path);
} 

如何实现该功能?

1 个答案:

答案 0 :(得分:3)

您无法在客户端javascript中getPaths(dir)获取服务器端文件结构。这些代码行是必要的。

localResourcesjQuery.sap.registerModulePathregister component resources。另一种方法是使用data-sap-ui-resourceroots标记。

<script
    id='sap-ui-bootstrap'
    type='text/javascript'
    src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js"
    data-sap-ui-xx-bindingSyntax="complex"
    data-sap-ui-theme='sap_bluecrystal'
    data-sap-ui-libs='sap.m'

    data-sap-ui-resourceroots='{
        "app1" : "./",
        "misc" : "./misc",
        "fragment" : "./fragment",
        "master" : "./master",
        "detail" : "./detail",
    }' >
</script>