带有URL更改的工具页面中的侧面导航和路由-SAP UI5

2020-08-26 21:58发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在尝试做类似SCP Cloud平台的事情。 在座舱中,我们有一个侧面导航,并根据我们单击的视图打开了URL,但侧面导航仍然保留。

我有一个带有侧面导航的工具页面,我试图根据从导航列表中选择的项目显示各种不同的视图。 我想在主要区域中显示它,而不要导航到完全不同的页面,否则我将丢失侧面导航。 问题是-对于我打算显示的不同视图,我必须创建一个片段,然后将该片段包含在滚动容器中。 我无法在主要内容中显示实际的MVC VIEW。 另外,当我单击片段表中的一行(显示在主内容区域中)时,如果必须进一步显示该行的详细信息,则会显示另一个片段。 在这种情况下,浏览器"后退"按钮被禁用,因为最终我们位于同一页面中,但是我希望用户也能够访问浏览器。

 
         
             <页面>
                 
                     
                 
                 
                    //想要在此处显示视图,但不起作用,因此必须复制为片段
                     //然后包含。
                  
                 
             
          

假设我选择了一个显示scrollContainer id =" directReps"的项目。 该片段DirectReporteesList具有一个包含所有用户的表。 单击任何行后,我要显示用户详细信息。 我试图将UserDetail.view包含在scrollContainer的内容中,并想导航到它。 但是下面是行不通的。

mainView.controller.js

 userDetails:函数(oEvent){
      //var oScrollContainer = this.getView()。byId(" detailsPage");
//var oCurrentView = oScrollContainer.getContent();

//var view = sap.ui.view({
//类型:sap.ui.core.mvc.ViewType.XML,
//viewName:" ... view.UserDetail"
//});
//oScrollContainer.addContent(view);
        this.byId(" pageContainer")。to(this.getView()。createId(" detail2"));
    //} 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在尝试做类似SCP Cloud平台的事情。 在座舱中,我们有一个侧面导航,并根据我们单击的视图打开了URL,但侧面导航仍然保留。

我有一个带有侧面导航的工具页面,我试图根据从导航列表中选择的项目显示各种不同的视图。 我想在主要区域中显示它,而不要导航到完全不同的页面,否则我将丢失侧面导航。 问题是-对于我打算显示的不同视图,我必须创建一个片段,然后将该片段包含在滚动容器中。 我无法在主要内容中显示实际的MVC VIEW。 另外,当我单击片段表中的一行(显示在主内容区域中)时,如果必须进一步显示该行的详细信息,则会显示另一个片段。 在这种情况下,浏览器"后退"按钮被禁用,因为最终我们位于同一页面中,但是我希望用户也能够访问浏览器。

 
         
             <页面>
                 
                     
                 
                 
                    //想要在此处显示视图,但不起作用,因此必须复制为片段
                     //然后包含。
                  
                 
             
          

假设我选择了一个显示scrollContainer id =" directReps"的项目。 该片段DirectReporteesList具有一个包含所有用户的表。 单击任何行后,我要显示用户详细信息。 我试图将UserDetail.view包含在scrollContainer的内容中,并想导航到它。 但是下面是行不通的。

mainView.controller.js

 userDetails:函数(oEvent){
      //var oScrollContainer = this.getView()。byId(" detailsPage");
//var oCurrentView = oScrollContainer.getContent();

//var view = sap.ui.view({
//类型:sap.ui.core.mvc.ViewType.XML,
//viewName:" ... view.UserDetail"
//});
//oScrollContainer.addContent(view);
        this.byId(" pageContainer")。to(this.getView()。createId(" detail2"));
    //} 
付费偷看设置
发送
2条回答
一只江湖小虾
1楼 · 2020-08-26 22:45.采纳回答

我从没有尝试过,但是默认情况下应该可以使用路由配置。

在清单路由配置中:用要动态放置视图的controlid替换controlid,并通过controlAggregation 父控件的聚合(controlid聚合)。 它类似于我们在App.view.xml中使用的App控件,并且App具有聚合"页面",其中所有视图将动态放置

"路由":{
          " config":{
             " routerClass":" sap.m.routing.Router",
             " viewType":" XML",
             " viewPath":" sap.ui.demo.nav.view",
             " controlId":" app",
             " controlAggregation":"页面",
             " transition":" slide",
             "异步":true
          },

,并确保将controlid(tnt page)放在根视图中。

让我知道它是否有效。

谢谢

Mahesh

nice_wp
2楼-- · 2020-08-26 22:51

arati deshpande 欢迎您,感谢您的更新:)

一周热门 更多>