实现源代码:

<cx-carousel[items]="items$ | async"[title]="title$ | async"[template]="carouselItem"itemWidth="285px"
>
</cx-carousel>


cx-carousel Component的几个属性:

  • items
  • title
  • template

进到carousel的实现文件里:
storefrontlib\src\shared\components\carousel\carousel.component.ts

items的类型:Observable数组

template属性:

cx-carousel本身作为一个reuse library,它不知道template应该如何渲染,因此需要cx-carousel的consumer,在这个例子里即product-carousel.component.html在消费时将自己的template通过template属性传入:

carousel里的carousel-panel:

运行时:

div的层级结构:

运行时:div class = slides,slide,item

这里可以看到辅助信息,ng-reflect-ng-if显示出运行时if的评估条件:true


这个normalizeDebugBindingName比较有用:


normalizeDebugBindingValue(value);

这里将消费端指定的template属性绑定到carousel ng-container的*ngTemplateOutlet属性里:

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

SAP Spartacus里cx-carousel的实现相关推荐

  1. SAP Spartacus里Product Carousel componentData取数据的逻辑研究

    Product Carousel的ComponentData通过构造函数注入: 通过查看componentData.data$.operator.project就能知道这个Observable的Ope ...

  2. SAP Spartacus 里的 icon 设计

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

  3. Media Query在SAP Spartacus里的用途

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

  4. SAP Spartacus里的feature module

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

  5. SAP Spartacus里product数据请求的HTTP url是在哪里维护的

    我们打开SAP Spartacus home页面时,能观察到product carousel里待显示的product数据从后台被请求: 随便点开一个url,格式如下: https://jerry.ea ...

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

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

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

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

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

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

  9. SAP Spartacus里的localStorage用法

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

  10. SAP Spartacus里modifiedtime的大小写问题

    从cms返回的Component数据,modifiedtime全部小写: https://github.com/SAP/spartacus/issues/2521 这个issue里,把所有modifi ...

最新文章

  1. DropBox免费扩容到10G了
  2. ruby 新建对象_Ruby面向对象编程的简介
  3. Windows10系统变慢,程序员该出手了,电脑性能大幅度提升!
  4. Lec6-待学习的堆排序
  5. Nacos-环境隔离
  6. 面象对象设计6大原则之三:里氏替换原则
  7. LintCode 1692. 组队打怪(田忌赛马,二分查找)
  8. android java加密_Android Java字符串加密
  9. php读取剪贴板内容,js如何处理剪贴板的内容?js处理剪贴板的内容的方法
  10. 【leecode】小练习(简单8题)
  11. 十进制四则运算计算器代码,输入为字符串
  12. HTML+CSS 整站 步骤
  13. 非关系型数据库和关系型数据库区别(转载)
  14. 布局--------动态添加 相对布局
  15. 关于「EPI」的练习 + 秋招笔试所用题库总结(持续更新~)+秋招笔试题库资源分享(无偿)
  16. 计算机视觉教程6-1:图解双目视觉系统与立体校正原理
  17. Pytorch 小知识点汇总三--numpy数组 求均值,方差,标准差
  18. [转]给明年依然年轻的我们:欲望、外界、标签、天才、时间、人生目标、现实、后悔、和经历
  19. 效果 - 收藏集 - 掘金
  20. kbd(##盒子布局##)/kbd

热门文章

  1. 图解Android事件传递之ViewGroup篇
  2. CentOS 6.x 快速安装L2TP ***
  3. 在Excel中实现查询功能
  4. HDFS应用场景、部署、原理与基本架构
  5. WinAPI: midiOutCachePatches - 预装音色
  6. python-自动发邮件
  7. Redis4.0 Cluster — Centos7
  8. 【SF】开源的.NET CORE 基础管理系统 -介绍篇
  9. POJ 1155 TELE 背包型树形DP 经典题
  10. Android之项目推荐使用的第三方库