2014-10-28 68 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

相關問題