2015-01-16 84 views
0

我在SAPUI上創建了一個非常簡單的應用程序,但由於某些原因.view.xml和.controller.js文件需要位於同一個目錄中而不是sap-ui-core.js文件,它不適合我。SAPUI5上的.view.xml和.controller.js文件的位置

當宣佈SAPUI5引導我指定該sapui-Core.js文件的目錄:

<script src="js/sapui/sap-ui-core.js" id="sap-ui-bootstrap" 
     data-sap-ui-libs="sap.m" data-sap-ui-theme="sap_bluecrystal"> 
</script> 

因此,在這種情況下,所有的.view.xml文件需要在JS/sapui/

在應用程序代碼中,我可以指定這些文件的位置嗎?我希望他們與index.html位於同一目錄中

var myView = sap.ui.xmlview("getStarted"); 
var oModel = new sap.ui.model.json.JSONModel(); 
    oModel.setData(data); 
    myView.setModel(oModel); 
    myView.placeAt('content'); 

謝謝!

回答

2

假設你有一個文件夾,名爲folder和裏面的視圖 - 控制器 - 對foo.view.xmlfoo.controller.js

那麼你就可以在你的情況下使用

sap.ui.localResources("folder"); 
var fooView = sap.ui.xmlview("folder.foo"); 
fooView.placeAt("someNicePlace"); 

您使用

sap.ui.localResources("js"); 
var fooView = sap.ui.xmlview("js.sapui.foo"); 
fooView.placeAt("someNicePlace"); 
+0

謝謝herrlock,假設我有www文件夾,並在裏面創建一個包含view-controller-pair的「app」文件夾,我可以這樣做:sap.ui.localresources(「app」); ?或者該文件夾相對於什麼? – KingCrimson

+1

該位置應該相對於文件的根目錄,其中(通常)是'index.html'。 – herrlock

0

如果您想使用來自不同文件夾結構的文件,可以使用

jQuery.sap.registerModulePath('controllers', '/js/controllers/'); 
jQuery.sap.registerModulePath('views', '/js/views/'); 

從相對於基本路徑的所需位置加載文件。