SAPUI5 路由引发错误"Control (ID of an App control) does not has an aggregation called pages"



我的组件.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/#/报告)时(Chrome):

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

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

可能出了什么问题?

我已经发现了问题所在。这有点像"范围"问题。您不能加入与父路由相同的控制。您可以生成以下错误消息与相同的问题:

找不到具有 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

相关内容

最新更新