簡體   English   中英

如何從啟動板導航到 Fiori 應用程序然后返回?

[英]How to navigate from launchpad to Fiori apps and then back?

在我們公司,我們設置了 Fiori 啟動板,我們在其中配置了一個磁貼,該磁貼鏈接到自定義開發的 SAPUI5 應用程序,該應用程序作為 BSP 部署在服務器上。 我們花了很長時間,但在該應用程序中使用路由器模式,我們設法使從 Launchpad 磁貼到自定義 UI5 應用程序的導航正常工作。

然而,我們正在努力解決的問題是另外兩條導航路徑:

  • 從應用程序返回到 Fiori 啟動板(回到主頁)
  • 從應用程序到另一個應用程序(平鋪到平鋪)

理想情況下,這種應用程序外導航采用 UI5 方式,包括過渡,因此不僅僅是 JS 中的 window.replace。 經過長時間的搜索,我發現支持這種情況的唯一提示是在這個類中:

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

但是,我不明白如何使用它。 該示例甚至不正確並且存在語法錯誤。 我在其他地方找到了 2 個論壇帖子,詢問如何使用它,但它們缺乏任何有意義的答案。

假設您使用Semantic Objects進行在 Launchpad 中配置的就地導航以導航到 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)

這仍然會觸發正確的轉換。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM