SAP 电商云 Spartacus UI 的双重 layout 配置层设计

CMS page API 负责确定 template 显示哪些 slots,slots 显示哪些 Component:

SAP 电商云 Spartacus UI 的双重 layout 配置层设计_第1张图片

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OtPqTaxm-1635227915586)(https://upload-images.jianshu...)]

SAP 电商云 Spartacus UI 的双重 layout 配置层设计_第2张图片

在 Spartacus layout-config.ts 里,也能定义每个 template 应该显示哪些 slots:

SAP 电商云 Spartacus UI 的双重 layout 配置层设计_第3张图片

并且能够定义一些全局 section 比如 header,footer 里显示的内容:
SAP 电商云 Spartacus UI 的双重 layout 配置层设计_第4张图片

在 Spartacus 层面 layout-config.ts 里定义的 pageTemplate - slots 的关系,相比 CMS 后台具有更高的优先级。

从 layoutSlots 这个数据结构的 where used list 也能看出,Spartacus 代码对它全是读操作,而没有写操作,证明 CMS page API 返回的数据,作用更大的应该是 slots 里包含的 Component 信息,这个是 Spartacus 层并未维护的。
SAP 电商云 Spartacus UI 的双重 layout 配置层设计_第5张图片

更多Jerry的原创文章,尽在:"汪子熙":

你可能感兴趣的:(SAP 电商云 Spartacus UI 的双重 layout 配置层设计)