SAP Spartacus的home page navigation逻辑
我以開發模式啟動SAP Spartacus,瀏覽器里輸入url: localhost:4200, 會自動重定向到如下頁面:
http://localhost:4201/powertools-spa/en/USD/
這個action是我們自己自定義的serializer里生成的。
在router.reducer.ts里打印出action明細:
fromNgrxRouter.ROUTER_NAVIGATION
發現powertools-spa/en/USD對應的semanticRoute是home, 而context字段指向的PageContext,id為__HOMEPAGE__, type為ContentPage:
其中RouterState類型定義如下:
當前狀態,即初始狀態,page context為空。初始狀態也定義在router.reducer.ts里:
運行時的初始狀態:
homepage維護在action payload里。下圖已經是從初始狀態進入加載context id為__HOMEPAGE__的下一狀態了:
問題:這個包含了home page的action是誰主動發起的呢?
答案是這個CustomSerializer:
semantic route:home,路徑為"":
lookupSemanticRoute:
routing-config.service.ts:
謎底揭開了
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的SAP Spartacus的home page navigation逻辑的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos7双机热备方案(pcs+co
- 下一篇: 从ngrx store里selector