https://sap.github.io/spartacus-docs/reference-app-structure/
该概念在 SAP Spartacus 3.1 版本引入。
这个 Reference App Structure 是 SAP 推荐客户在搭建自己的 Spartacus Storefront 时所用的参考。
Spartacus 包含若干可以 lazy load 的 feature libraries.
有一套标准的工程结构,也便于新开发人员进入项目后,快速熟悉项目并上手。
结构1. AppModule
2. SpartacusModule3.BaseStorefrontModule从 @spartacus/storefront 里导入,再导出。
4.SpartacusFeatureModule
5. feature related modules6. 配置 module
每个 Angular 应用都有一个 root app module,通常命名为 AppModule. 在 SAP Spartacus reference app structure 里,AppModule 包含了应用层级的 imports:从上图可见,StoreModule 和 EffectsModule 等 module,因为整个应用的其他定制开发很可能也会用到,因此直接在 AppModule 里 import,而没有放到 SpartacusModule 里。
SpartacusModule 包含三部分:The BaseStorefrontModule, which encapsulates core Spartacus imports that are usually required by most Spartacus applications.
包含了任何 Spartacus 应用都必需的 imports.
- The SpartacusFeaturesModule, which encapsulates Spartacus features.Spartacus feature 又分为两部分:来自 @Spartacus/storefront 和 features 文件夹下的 modules.
The SpartacusConfigurationModule, which encapsulates the general Spartacus configuration.
配置信息:
feature 相关的配置信息,推荐放到 feature modules 里,从而遵循关注点分离的原则。