我正在尝试使用适当的MVC结构在OpenUI5中构建一个简单的Hello World应用程序。我使用的是sap.m.App而不是SplitApp。 所以我的App.view.js看起来像这样:
....
createContent : function(oController) {
this.setDisplayBlock(true);
this.app = new sap.m.App("targetAppId", {
});
return this.app;
}
....
在我的组件中,对于路由我写了以下代码:
routing : {
config : {
viewType : "XML",
viewPath : "./view",
targetControl : "targetAppId",
clearTarget : false,
transition : "slide"
},
routes : [{
pattern : "",
viewType : "XML",
name : "splash",
view : "splash",
viewPath : "./view",
viewLevel : 0,
}
]
}
}
我的App.view.js和splash.view.xml都在./view。
在我的component.js中,我编写了以下代码来加载视图:
createContent : function() {
var oView = sap.ui.view({
id : "app",
viewName : "./view.App",
type : "JS",
viewData : {
component : this
}
});
return oView;
}
splash.view.xml -
<mvc:View xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m" >
<Page
showHeader="true">
<content>
<Text text="Hello"/>
</content>
</Page>
</mvc:View>
执行时,我得到一个空白的蓝色屏幕。由于某种原因,它不会导航到splash.view.xml。我不知道为什么。请帮忙。
编辑:
如果我将sap.m.App更改为sap.m.SplitApp并添加targetAggregation:&#34; masterPages&#34;。一切正常
更新:
我所做的是更改targetAggregation:&#34;页面&#34; 。一切正常。在这里写这个,以防它有助于某人。
答案 0 :(得分:0)
使用targetAggregation : "pages"
,一切正常。