天天看點

Fiori navigation logic ( Route )

對于Fiori的developer來說,要在代碼裡做view之間的navigation很簡單,就做一些配置,然後call 一行代碼,思路非常像webclient ui裡的inbound和outbound plug。不過如果搞清楚底層到底怎麼work的比較好。

貌似這套東西是SAP 從其他地方copy的,因為所有代碼都在thirdparty folder下。

Fiori navigation logic ( Route )

UI5 view之間navigation的核心代碼在folder resources/sap/ui/thirdparty裡的js實作。

如上圖所示,router framework試圖根據傳入的route request “detail/AccountCollection(‘4039331’)” 來擷取一條比對的route path.

問題1: 這個request是怎麼傳到route framework的?

answer:在我們自己的application view裡傳遞的。當我們點選navigation list時,架構自動調用我們注冊的事件處理函數setListItem, 在line 124将目前待顯示的detail page的上下文,所謂的contextPath,即"detail/AccountCollection(‘4039331’)"通過調用route架構的方法navTo傳入route架構

Fiori navigation logic ( Route )
Fiori navigation logic ( Route )
Fiori navigation logic ( Route )
Fiori navigation logic ( Route )
Fiori navigation logic ( Route )
Fiori navigation logic ( Route )

繼續閱讀