cxOutlet合集

  • SAP Spartacus自定义指令cxOutlet的工作原理

  • SAP Spartacus table cell如何通过cxOutlet在运行时动态注入组件

  • SAP Spartacus 重用组件cx-table的设计原理

  • SAP Spartacus cxOutlet里的templatesRefs的填充逻辑

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

从下图代码不难看出,outlet.directive.ts调用outlet.service.ts的get方法,根据outlet名称,一个字符串变量,去获取待渲染的Component类型。

private buildOutlet(position: OutletPosition): void {let templates: any[] = <any[]>(this.outletService.get(this.cxOutlet, position, USE_STACKED_OUTLETS));
// ....
}

store数据结构:

想在调试器里看structure的值?

在函数ɵɵproperty里就能看了。

这个render方法只是调用this.componentFactoryResolver.resolveComponentFactory

根源还是要弄清楚这个dataComponent指向的Component,是在哪里被赋值的。

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

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

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

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

  2. 如何查看 SAP Spartacus PageLayoutComponent 里的 template$ 的值

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

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

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

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

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

  5. 给基于SAP Spartacus 3.4.1 版本的 Storefront 添加对服务器端渲染的支持

    这个 Storefront 的本地地址:C:\Code\SPA\spa3.1\mystore31 基于的 SAP Spartacus 版本:大于 3.1.3,小于 4.0: 查看 package-lo ...

  6. SAP Spartacus localStorage 里存储的 auth Token 过期时间

    Chrome 开发者工具里存储了access token 存储的时间和过期时间: access_token_stored_at expires_at 这两个字段的值,放到 Date 构造函数内,打印出 ...

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

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

  8. SAP Spartacus PagelayoutComponent里的section和slot

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

  9. SAP Spartacus 项目里的 .env-cmdrc 文件

    项目根目录下有一个文件名为 .env-cmdrc: 在 package.json 里定义如下的 script: "build:ssrdev": "env-cmd --no ...

最新文章

  1. 时装搭配_时装搭配修身T恤搭配紧身牛仔裤,时尚的穿搭,尽显时尚领导者
  2. 中年职场危机,这是我看过最靠谱的建议
  3. leetcode 861. 翻转矩阵后的得分
  4. linux编译安装mysql5.1.x
  5. Android之Content和activity、service、Application关系和attachBaseContext函数调用的时候
  6. Android(2)-----Fragment //(第七周后的知识)
  7. [禅悟人生]心平气和, 慢慢修行
  8. Python Flask实现修改和删除数据
  9. Facebook 的应用机器学习平台
  10. component多个 vue_Vue.js之组件(component)
  11. 代理模式(Proxy) 静态
  12. Hibernate的org.hibernate.dialect.Oracle9Dialect错误
  13. 姜启源《数学建模》学习笔记 第一周
  14. 利用EXCEL对数据进行比对,以及提取有效数据
  15. 启动sqlserver服务时,总是出现“系统错误(126),指定驱动程序无法加载
  16. 如何设置DiffMerge不进行Class文件的比较
  17. Python每天一个小程序——字典翻转输出和《沉默的羔羊》之最多单词
  18. Android学习笔记之——Android Studio的安装(3.6版本)、Java的基本语法及Android的概述
  19. 【Qualcomm】浏览器无法登录高通网站的修改方法
  20. 初学者应该如何学习法语呢?

热门文章

  1. 2015级C++第2周实践项目
  2. 使用UTL_FILE在oracle中读写文本数据
  3. 小希的迷宫 HDU - 1272 (并查集)
  4. spring中的注解配置
  5. AngularJs出现错误Error: [ng:areq]
  6. Counting Bits(Difficulty: Medium)
  7. oracle drop table and purge
  8. Android项目开发新版本需要注意的事项
  9. 方维O2O系统 后台业务员功能开发
  10. 〈转〉用VS2005.NET进行三层结构应用程序的开发