如何找到 SAP 电商云 Spartacus UI 导航 navigation 的驱动器 - NavigationEntryItemEffects
該 effect 有三個依賴:
- Actions
- CmsComponentConnector
- RoutingService
loadNavigationItems$ 整個是一個 Observable 對象,無法通過調試的方式去知道這個 Observable 本身什么時候被調用,只能知道 Observable 關聯的 Operator 什么時候被觸發。
當 Spartacus 其他地方的代碼觸發 CmsActions.LOAD_CMS_NAVIGATION_ITEMS 時,我們這個 loadNavigationItems$ 里第18行的 ofType 就會觸發。
如何調試
在 ofType Operator 調用之前,添加一個 tap 操作符即可:
可以看到,LoadCurrencies,LoadCart 這些 Action,也會觸發這個 NavigationEntryItemEffects.
這又是為什么呢?
NavigationEntryItemEffects 被 export 出去,我們看何處導入了該 class.
cms\store\effects\index.ts 通過 effects 數組導出了這個 effects:
CmsStoreModule 的 imports 區域,包含了導出的 effects 數組。
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的如何找到 SAP 电商云 Spartacus UI 导航 navigation 的驱动器 - NavigationEntryItemEffects的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 研究生毕业典礼校长致辞 校长研究生开学典
- 下一篇: 为什么在大型 Angular 应用里我们