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

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

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OtPqTaxm-1635227915586)(https://upload-images.jianshu.io/upload_images/2085791-10b538921bcb2566.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

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

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

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

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

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

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

更多Jerry的原创文章,尽在:"汪子熙":
SAP 电商云 Spartacus UI 的双重 layout 配置层设计

上一篇:重学c语言(一、c语言的编译链接)


下一篇:ts笔记-辨析联合类型