如何判断对于一个observable stream,存在一个可用的converter?

在方法hasConverters里进行:


this.converters是一个map,里面有四个Spartacus标准的converter:


因为这四个标准的normalizer都不是ProductNormalizer,因此继续搜索:

此处生成converter实例:

token:

这就是我们应用代码里提供的Normalizer:


如何实例化converter?

在hydrate方法里:


这里有个递归操作:


record.factory,这个工厂方法里,直接调用ProductNameNormalizer,也就是我应用程序里实现的Normalizer:

看这个JavaScript代码和TypeScript代码是如何一一对应的:

factory:


要获取更多Jerry的原创文章,请关注公众号"汪子熙":

SAP Spartacus里的converter实例化逻辑相关推荐

  1. SAP Spartacus 里的 icon 设计

    同 SAP Fiori 一样,SAP Spartacus 里也有大量的自定义 icon 设计,比如下图的 iconTypes.RESET: 需要调用 iconLoader 获取 RESET icon ...

  2. Media Query在SAP Spartacus里的用途

    Media queries are useful when you want to modify your site or app depending on a device's general ty ...

  3. SAP Spartacus里的feature module

    SAP Spartacus里Component的使用受featureModule控制:

  4. SAP Spartacus 里的 .release-it.json 文件

    在 SAP Spartacus package.json 里有一个依赖叫做 release-it: 这个工具的链接:https://github.com/release-it/release-it 这 ...

  5. 如何找到 SAP Spartacus 里某个 Component TypeScript 编译后生成的 JavaScript 位置

    需求 如何找到触发该网络请求的准确代码位置? 从 initiator 里查看调用栈上下文,一点头绪也没有. 找到触发该网络请求的控件的 selector:cx-register 在 Storefron ...

  6. SAP Spartacus 里的 cxOutletRef 指令执行过程分析

    先看 cxOutletRef 指令的效果:ng-template 里定义了如下图标 1 区域所示的自定义 UI,通过 cxOutletRef, 将其插入到图标 2 所示的 ProductDetails ...

  7. SAP Spartacus的home page navigation逻辑

    我以开发模式启动SAP Spartacus,浏览器里输入url: localhost:4200, 会自动重定向到如下页面: http://localhost:4201/powertools-spa/e ...

  8. SAP Spartacus ConsentTemplate 数据结构的暴露逻辑

    我基于SAP Spartacus 2.1创建的sample store,里面导入了ConsentTemplate这个数据结构. import { ActiveCartService, CartAddE ...

  9. SAP Spartacus里的localStorage用法

    window-ref.ts: get nativeWindow(): Window {return typeof window !== 'undefined' ? window : undefined ...

最新文章

  1. 下列关于Java多线程并发控制_下列关于Java多线程并发控制机制的叙述中,错误的是...
  2. 制作一个简易的QQ×××
  3. RHCE认证培训+考试七天实录(一)
  4. win7 IE11卸载后无法上网
  5. 使用delphi 开发多层应用(十三)使用Basic4android 直接访问kbmMW server
  6. nginx与lighttpd性能简单对比
  7. 洛谷P3402 【模板】可持久化并查集
  8. ROS学习记录:在ROS的Rviz下完成摄像头的视频显示
  9. drop user和drop user cascade的区别
  10. Pandas + Jinja,轻松创建一个 PDF 报表
  11. 用Jsoup从网页上抓取中国地区编号转变成Map
  12. 阿铭Linux_传统IDC 部署网站学习笔记20190218
  13. 探测器类的电路设计流程框图
  14. Science | 再野化植物微生物组——作物祖先微生物群可能为提高可持续的粮食生产提供了一种方法...
  15. 携手业内专家赋能AI时代--EpiK铭识协议发起开源知识运动
  16. wps2016向程序发送命令_解决excel弹出“向程序发送命令时出现问题”的方法
  17. Android瘦身优化
  18. 2020 全国大学生数学建模竞赛 题目
  19. burpSuit抓取app的数据包
  20. 奥鹏教育计算机成绩查询,奥鹏远程教育网可以进行我们入学考试成绩查询吗

热门文章

  1. MySQL 7种日志类型 详解
  2. 使用CuteFTP登陆FTP(serv-U)服务器后无法LIST目录和文件的解决方法
  3. 如何复制CSDN上他人的博客文章到自己博客下
  4. 知乎:GAN 的发展对于研究通用人工智能有什么意义?
  5. Mysql(Mariadb)数据库主从复制
  6. (转发)一个通用的C++ 消息总线框架
  7. ASP.NET图片上传(配合jquery.from.js 插件)
  8. Windows: 在系统启动时运行程序、定时计划任务、定时关机
  9. [ios2]ios系统中各种设置项的url链接
  10. zookeeper 源码阅读(3)