我正在尝试从主视图导航到多个详细信息视图。 但是我不知道它在component.js中是怎么做的,所有的样本都是简单的细节视图。我可以导航到所有视图,但我无法从odata获得绑定,只能正确路由工作中的最后一个详细信息视图。
component.js代码:
routing : {
config : {
routerClass : ZPPS.MyRouter,
viewType : "XML",
viewPath : "ZPPS.view",
targetAggregation : "detailPages",
clearTarget : false
},
routes : [
{
pattern : "",
name : "main",
view : "Master",
targetAggregation : "masterPages",
targetControl : "idAppControl",
subroutes : [
{
pattern : "{entity}/:tab:",
name : "detail",
view : "Detail"
}
]
},
{
pattern : "",
name : "main",
view : "Master",
targetAggregation : "masterPages",
targetControl : "idAppControl",
subroutes : [
{
pattern : "{entity}/:tab:",
name : "placeDetail",
view : "PlaceDetail"
}
]
},
{
pattern : "",
name : "main",
view : "Master",
targetAggregation : "masterPages",
targetControl : "idAppControl",
subroutes : [
{
pattern : "{entity}/:tab:",
name : "vehicleDetail",
view : "VehicleDetail"
}
]
},
{
name : "catchallMaster",
view : "Master",
targetAggregation : "masterPages",
targetControl : "idAppControl",
subroutes : [
{
pattern : ":all*:",
name : "catchallDetail",
view : "NotFound",
transition : "show"
}
]
}
]
}
答案 0 :(得分:1)
你必须使用十字路口的贪婪功能。 路由器基本上是一个名为crossroads的thridparty-lib,包含在SAPUI5-Class中。
默认实现已禁用贪婪选项。这意味着路由器会遍历您的路由并获取匹配的第一条路径......就是这样。
使用贪婪选项,您可以告诉路由器搜索所有匹配的模式,而不仅仅是第一个。
以此路由器为例,如何启用贪婪选项: http://ui5.de/core/Router.js