SAP Spartacus PageLayoutService.ts 里的 templateName$ get 操作:返回一个 Observable 对象,包裹的类型为 string.

pipe 的第一个操作 filter,目的是确保 page 对象的 template 属性一定存在,避免接下来第二个 map 操作出现返回被 Observable 包裹的 undefined 值的情况。

而在 PageLayoutComponent 实现里,有一个同名属性。

从 layoutName$ 返回的逻辑看,优先从 section$ 里取数。如果 section$ 里有值,返回 section 的值,否则直接返回 PageLayoutService 的 templateName$.

可以查看到这个 project 的具体实现位置:

从 page 结构里拿到 template 属性:值为 ProductDetailsPageTemplate

具体原理,是从 ngrx central store 里,拿到 product 明细页面相关数据:

拿到 result 后,调用 next,通知对应的 subscriber:

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

如何查看 SAP Spartacus PageLayoutComponent 里的 template$ 的值相关推荐

  1. SAP Spartacus PagelayoutComponent里的template

    添加如下打印语句: <h1>PageLayout template: {{ layoutName$ | async }} </h1> <h2>template na ...

  2. SAP Spartacus PagelayoutComponent里的section和slot

    Page包含slots,slots包含Components. Spartacus使用page template来组织slots和Components. 一个page template包含了一些可被全局 ...

  3. SAP Spartacus cxOutlet里的元数据存储,outlet名称和待渲染Component的映射关系

    cxOutlet合集 SAP Spartacus自定义指令cxOutlet的工作原理 SAP Spartacus table cell如何通过cxOutlet在运行时动态注入组件 SAP Sparta ...

  4. SAP Spartacus cxOutlet 里的 templatesRefs 的填充逻辑

    cxOutlet合集 SAP Spartacus自定义指令cxOutlet的工作原理 SAP Spartacus table cell如何通过cxOutlet在运行时动态注入组件 SAP Sparta ...

  5. SAP Spartacus PageLayoutComponent 如何知道自己应该显示哪些具体内容

    我们以前介绍过,经过 SAP Spartacus 路由配置后的 routes 数组,其 route 数据结构的 Component 属性,清一色指向 generic 的 PageLayoutCompo ...

  6. SAP Spartacus url里默认electronics-spa的由来

    单步调试时密切关注url的变化,初始url为localhost:4200: 这个electronics-spa即使在后台没有连通的情况下也能用,说明肯定不是从后台返回的: 这篇文章SAP Sparta ...

  7. 用代码查看SAP Spartacus购物车内的行项目

    效果如下图所示: 我打开SAP Spartacus任意一个产品主数据的明细页面,希望看到这个产品在当前购物车里的数量: 具体实现一行TypeScript代码可以搞定: quantity$: Obser ...

  8. SAP Spartacus store里引用的library是如何编译出来的

    看一个基于SAP Spartacus library开发的storefront Angular应用的依赖: "@spartacus/assets": "^2.1.0&qu ...

  9. 使用 selector 从 SAP Spartacus state 里读取 Cart 数据

    选择器 selector 是用于获取存储状态 state 切片的纯函数. @ngrx/store 提供了一些帮助函数来优化这个选择. 选择器在选择状态切片时提供了许多功能. 使用 createSele ...

最新文章

  1. BIETLOLTP之概念熟悉
  2. linux/unix编程手册-16_20
  3. [C#]async和await刨根问底
  4. css默认样式以及解决办法
  5. Sharing A Powerful Tool For Calculate Code Lines
  6. Saltstack-7:返回
  7. 关闭自动降频 linux,在Deepin系统下CPU不能自主降频的两种解决方法
  8. javascript闭包新认识
  9. 数据共享是未来?通用福特丰田联手推进自动驾驶标准制定...
  10. win7 64位下 memcached安装
  11. c#调用python脚本效率_C# 调用python程序脚本(IronPython)
  12. SQL server 2008 r2导入数据
  13. 关于亿图图示缩放锁定1%的问题
  14. 项目管理的过程中如何做好沟通管理
  15. yapi 权限_YApi
  16. python zipfile压缩_python:用 zipfile 模块压缩文件-压缩文件格式
  17. 用C语言画一个Q版奥特曼
  18. 10-特质-Scala
  19. 第十五章 Caché WebSocket
  20. 一步一步开发Game服务器(二)登陆2

热门文章

  1. iOS Block 知识点拾遗
  2. angular项目打包发布流程
  3. linux基础入门概念
  4. MaxCompute Next
  5. php中implode()和explode()的应用
  6. 2016蘑菇街编程题:搬圆桌
  7. [算法系列之二十六]字符串匹配之KMP算法
  8. DEDECMS全版本gotopage变量XSS ROOTKIT 0DAY
  9. jQuery和MooTools的真正区别
  10. 数据中心扩张和产能计划