乐趣区

关于sap:SAP-Spartacus-如何根据-page-layout-获得对应支持的-slots

在 SAP Spartacus PageLayout Component 的实现里,每一个 layoutName 对应都有一个 cxOutlet 可供扩大:

第 13 行的 ngFor 指令,将该实现类的 slots$ 开展,为每一个 slot 搁置对应的 CMS Component.

slots$ 是一个数组,通过 pageLayoutService.getSlots 办法获取。

本文介绍这个 getSlots 办法的执行明细。

switchMap 这个 rxjs 操作符,暗示了其传入的箭头函数,是一个 cancellable 的耗时操作。

在这个闭包内执行:

combineLatest:只有 this.page$ 和 this.breakpointService.breakpoint$ 有一个被订阅,就会触发 map 操作:

反对的所有 slots 和 slots 外面容许的 Components 列表:

breakpoint:xl

读取 slot 配置:

所有 template 配置都在 tis.config.layoutSlots 里了:

拿到了 header 的配置:

最终后果:

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

退出移动版