UI5路由不会实例化视图

时间:2015-03-17 09:26:40

标签: javascript view routes sapui5

我的组件中有一些路由。我想导航到URL" URL /#/ Reports"。这是我的路线:

routes: [
                {
                    pattern: "",
                    name: "menu",
                    view: "Menu",
                    targetAggregation: "pages",
                    targetControl: "idAppControl"
                },
                {
                    pattern: "Reports",
                    name: "reports",
                    view: "SplitContainer",
                    targetAggregation: "pages",
                    targetControl: "idAppControl",
                    clearTarget: true,
                    subroutes: [
                        {
                            pattern: "Reports/SFC",
                            name: "sfcsub",
                            view: "SFCReport",
                            targetControl: "idSplitContainerControl",
                            targetAggregation: "masterPages"
                        }
                    ]

                }
            ]
但是,这是一种有效的工作方式。这意味着,如果我点击菜单项到/ Reports路径,那么"菜单"视图消失了。问题是" SplitContainer"视图未加载/实例化。没有DOM元素。 疯狂的是,如果我正在重新加载页面(使用URL" URL /#/ Reports")我很快就能获得SplitContainer视图。

导致报告路径的功能:

sap.ui.core.UIComponent.getRouterFor(this).navTo("reports", {
    from: "menu"
}, bReplace);

1 个答案:

答案 0 :(得分:0)

你设置了

clearTarget: true, 

从应用页面聚合中删除菜单页面。 如果您使用的是navContainer和splitcontainer,则应将clearTarget设置为false,因为它们正在构建导航堆栈并且需要页面始终在其聚合中。

BR, 托拜厄斯