这个问题来自这个答案(我无法运行源代码),我的要求与这个问题是一个具有应用程序控制的页面,可导航到具有一个主和一个详细视图的拆分范围。master.view.xml已成功加载,但我得到
“找不到ID应用程序的控制”
单击项目时出错。
我的元数据:json:
“路由”:{“ config”:{“ routerClass”:“ cts.alert.myrouter”,“ viewType”:“ xml”,“ vivepath”,“ viewpath”:“ cts.alert.view”,“ controlID”,“ controlID”:“ app”,“ app”,“ controlAggregation”:“页面”,“ cleartarget”:“ false”,“ butpassed”:{“ target”:['notfound']},“ async”:true},“ true},“路由”:[{“ staters”:“:”“,“名称”:“ WorkList”,“ Target”:[“ WorkList”]},{“模式”:“ split”,“ name”:“ split”,// 。,“ name”:“ main”,“ view”:“ master”,“ targetAggregation”:“ masterpages”,“ targetControl”:“ idappControl”,// SplitContainer ID“ subroutes”:[{“ pattern”:“ evelicles/evericles/evelicles/{objectId}“,”名称“:“对象”,“ view”:“详细信息”,“ targetAggregation”:“ detailpages”,}]}]}},{“ name”:“ catchallmaster”,“ view”:“ master”:“ master”“,“ targetAggregation”:“ masterpages”,“ targetControl”:“ idappControl”,“ subroutes”:[{“ pattern”:“:all*:”,“:”,“名称”:“ catchallDetail”,“ catchallDetail”,“ view”:“ notfound”}]}],”目标s": { "master": { "viewName": "Master", "viewLevel": 2, "viewId": "master", "controlAggregation": "masterPages" }, "worklist": { "viewName": "Worklist", "viewId": "worklist", "viewLevel": 1 }, "object": { "viewName": "Detail", "viewId": "detail", "viewLevel": 3 }, "objectNotFound": { "viewName": "ObjectNotFound", "viewId": "objectNotFound" }, "notFound": { "viewName": "NotFound", "viewId": "notFound" }, "detailObjectNotFound": { "viewName": "DetailObjectNotFound", "viewId": "detailObjectNotFound" }, "detailNoObjectsAvailable": { "viewName": "DetailNoObjectsAvailable", "viewId": "detailNoObjectsAvailable" } } }
我不确定子放弃是否仍然需要这么多目标。我知道问题在于“ tragetcontrol”:“ app”在“分裂”路线,但是如果我添加“ targetControl”:“ IDAppControl”“目的”路线,它也会产生
无法找到使用IDAppControl的ID iDAppControl
和这个答案说:
您不能加入与父路线相同的控制。
我现在真的很困惑。
我也尝试了删除“ rootview”在“ sap.ui5”,不工作。
任何帮助将受到欢迎!
感谢这个路由配置文档,我解决了我的问题。
我认为这是“ targetControl”:“ App”在“拆分”中导致此错误的路线,但实际上是因为“ ControlID”:“ App”在routing.config这引起了这个问题。
配置参数定义了路由配置的默认值。
更改后,我得到了另一个错误:
目标工作列表没有ControlID集,也没有父级,因此无法显示目标。
所以我删除了目标在工作清单路线并添加TargetControl:应用程序在其中,由于它不再有默认值目标控制价值。
这是新的路由配置:
“路由”:{“ config”:{“ routerclass”:“ cts.alert.myrouter”,“ viewType”:“ xml”,“ viewpath”,“ viewpath”:“ cts.alert.view”,“ controlAggregation”,“ controlAggregation”:“ controlAggregation”:“ controlAggregation”:“页面”,“页面”,“”,“,”“ cleartarget”:“ false”,“绕过”:{“ target”:[“ notfound”]},“ async”:true},“路由”:[{“ staters”:“”,“”,“ name”:“工作列表”“,“ view”:“ worklist”,“ targetControl”:“ app”},{“模式”:“ split”,“ name”:“ split”,“ split”,“ view”:“ splitApp”,“ targetControl”:“,” subroutes“:[{“ staters”:“ master”,“ name”:“ main”,“ view”:“ master”,“ targetAggregation”:“ masterpages”,“ target control”:“ idappcontrol”,“ subRoutes”“:[{“ pattern”:“车辆/{objectId}”,“名称”:“对象”,“ view”:“ detail”,“ targetAggregation”:“ detailpages”}]}}},{“ name”::“ catchallmaster”,“ view”:“ master”,“ targetAggregation”:“ masterpages”,“ targetControl”:“ idappControl”,“ subroutes”:[{“ pattern”:“:”:“:all*:all*:”,“ name”:“:”:“catchallDetail”,“ view”:“ notfound”}]}],},},}