SAP 电商云 Spartacus UI 的 feature module 设计原理
我們以一個具體的例子來說明該原理。
我們查看某 integration library 目錄下的 public_api.ts:
關注 module:
這個 lib 包含的 module 為 EpdVisualizationModule 以及對應的配置:EpdVisualizationConfig
注意第八行 import 的 VisualPickingTabModule,這個才是包含了 Angular Component 的 module.
入口是 VisualPickingTabComponent:
對于 Spartacus 來說,它只關心最頂層的 EpdVisualizationModule.
SpartacusFeaturesModule
SpartacusFeaturesModule 旨在輕松管理所有非核心 Spartacus 功能,包括靜態加載和延遲加載。 它充當所有功能的入口點,理想情況下,這些功能被包裝到自己的獨立功能模塊中。
在早期的 3.x 次要版本中,SpartacusFeaturesModule 可能看起來臃腫而忙碌,但隨著每個連續的發布,它應該變得更加簡潔,因為努力將大部分功能移到單獨的庫中。
理想情況下,可以將一個完整的功能封裝到一個特定的功能模塊中。 該模塊可以包含與功能相關的配置以及自定義。
根據環境變量 environment 對應的值來決定插入哪些 feature module 到數組 featureModules 里。
最后
SpartacusFeatureModule import 的 module 包含兩部分,mandatory 的 core module(硬編碼),以及上文描述的 featureModules 數組里的 module 兩部分。
linux 系統:
export SPA_ENV=epd-visualization
windows 系統:
set CX_EPD_VISUALIZATION=true&& yarn start:local
開啟 CX_EPD_VISUALIZATION 之后,就能看到對應的 CMS mapping 了:
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的SAP 电商云 Spartacus UI 的 feature module 设计原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 本地启动 SAP Commerce Cl
- 下一篇: 使用 ABAP 控制 Android 原