SAPUI5路由抛出错误“控件(应用程序控件的ID)没有称为页面的聚合”

时间:2015-03-16 13:09:00

标签: routing aggregation sapui5

我在Component.js中拥有的是这些路线:

routes: [
                {
                    pattern: "",
                    name: "menu",
                    view: "Menu",
                    targetAggregation: "pages",
                    targetControl: "idAppControl",
                    subroutes: [
                        {
                            pattern: "Reports",
                            name: "reports",
                            view: "SplitContainer",
                            targetAggregation: "pages",
                            targetControl: "idAppControl",
                            clearTarget: true
                        }
                    ]
                }
            ]

当我尝试访问子程序(URL /#/ Reports)时,应用程序抛出(Chrome):

  

控件idAppControl没有名为pages的聚合 -

这是令人困惑的,因为" idAppControl"是一个应用程序,因此有一个聚合页面。此外,第一个"主要"即使我使用与子路由完全相同的控制(和聚合),路由也能很好地工作。

可能出现什么问题?

1 个答案:

答案 0 :(得分:1)

我发现了什么是错的。这有点像“范围”问题。您不能加入与父路径相同的控件。 您可以使用相同的问题生成以下错误消息:

  

无法找到ID为idAppControl的控件

我所做的是:

         routes: [
            {
                pattern: "",
                name: "menu",
                view: "Menu",
                targetAggregation: "pages",
                targetControl: "idAppControl"
            },
            {
                pattern: "Reports",
                name: "reports",
                view: "SplitContainer",
                targetAggregation: "pages",
                targetControl: "idAppControl",
                clearTarget: true
            }
        ]

回想起来,这似乎很合乎逻辑:D