“ ControlAggregation”是指将映射视图添加到的目标聚合。
如以下用例中所指定:
"routing": { "config": { "routerClass": "sap.m.routing.Router", "viewType": "XML", "viewPath": "sap.ui.demo.nav.view", "controlId": "app", "controlAggregation": "dummy", "transition": "slide", "bypassed": { "target": "NA" }
视图定义如下:
<mvc:View controllerName="sap.ui.demo.nav.controller.App" xmlns="sap.m" xmlns:mvc="sap.ui.core.mvc" displayBlock="true"> <App id="sampleApp"/> </mvc:View>
因此,此处的“ controlAggregation”被命名为“虚拟”,而该应用程序被命名为SampleApp。
因此目标为“ sap.m.SampleApp”,聚合命名为“虚拟”。让我们在这里举个例子:
routes :[{ pattern:"employee/{id}", name:"employee", target:"employee" }, { pattern:"department/{id}", name :"department", target:"department" }], targets:{ employee:{ viewName:"Employee", controlAggregation:"masterPage" }, department"{ viewName:"Department", controlAggregation:"contentPage" } }
因此,当用户导航到employee / 3时,路由引擎会发现“ Employee”是此模式的目标。然后,它尝试查找该目标的视图名称,即“雇员”。此后,它将确定该视图的控件聚合(如果有)。在这里,我们将其设为“ masterPage”。现在,View Engine将在“ masterPage”内部呈现视图。