2014-10-28 64 views
2

在我们公司,我们已经建立了Fiori启动板,其中我们配置了一个连接到自定义开发的SAPUI5应用程序的磁贴,该应用程序在服务器上作为BSP部署。我们花了很长时间才使用该应用程序中的路由器模式,我们设法从Launchpad磁贴导航到自定义的UI5应用程序工作。如何从启动板导航到Fiori应用程序,然后返回?

我们正在努力的事情,然而,这些2条其他导航路径:

  • 从应用程序回到菲奥里启动板(回家)
  • 从应用程序到另一个应用程序(瓦平铺)

理想情况下,这种应用程序导航不在应用程序导航中,而是以UI5的方式,包括转换,所以不仅仅是JS中的window.replace。经过长时间的搜寻后,我在支持发现这种情况下唯一的线索是在这个类:

https://sapui5.hana.ondemand.com/sdk/#docs/api/symbols/sap.ushell.services.CrossApplicationNavigation.html

不过,我不知道如何使用它。这个例子甚至不正确,并且有语法错误。我在其他地方发现了2篇论坛帖子,询问如何使用它,但他们缺乏任何有意义的答案。

+0

如何从Launchpad导航到您的应用程序?您是否在使用“Semantic Objects”进行就地导航? – 2014-10-30 09:23:56

回答

1

假设您使用Semantic Objects在启动板中配置的就地导航来导航到UI5应用程序,您可以使用您已经提到的CrossApplicationNavigation服务从一个应用程序导航到另一个应用程序。但是,关于它的文档有点混淆。这是它的工作对我来说:

// Step 1: Get Service for app to app navigation 
var navigationService = sap.ushell.Container.getService("CrossApplicationNavigation"); 

// Step 2: Navigate using your semantic object 
navigationService.toExternal({ 
           target : { semanticObject : "<YourObject>", action: "<YourAction>" }, 
           params : { A : "B" } // optionally 
          }) 

如果你想就地导航回去后你的启动板,你只需要调用

window.history.go(-1) 

这仍然触发正确的转换。

+0

您好Tim,对我来说,window.history.go(-1)仅在我输入Fiori应用程序时起作用,然后按下后退按钮。如果我点击一个列表项目或详细视图项目,它不起作用,支持选定的项目列表...你知道如何避免这个错误吗? – andresmafra 2014-11-17 15:43:15

相关问题