- SAP 电商云 Spartacus UI 产品搜索结果的设计明细
- SAP 电商云 Spartacus UI 的 Product C
- 如何在 SAP 电商云 Spartacus UI 里访问 CMS
- SAP UI5 sap.ui.vk 命名空间内的控件介绍
- SAP 电商云 Spartacus UI 里如何捕捉语言设置的更
- 网站上的 breadcrumb 使用场景浅析
- HTML 按钮(button)的 disable 属性和 dis
- SAP 电商云 Spartacus UI Proxy Facad
- Angular @Injectable 注解的工作原理浅析
- 关于 Angular 部署以及 index.html 里 bas
答案是采用 CmsComponentData 这个服务。
看个实际例子:
CmsQuickOrderComponent 的定义,维护在 models 文件夹里:
运行时,只能访问到上图新 extend 出的字段 quickOrderListLimit 的值:
我们另外找一个 Banner Component 试试。
对于 BannerComponent 来说,CmsComponentData 的数据是完整的。
这个 CmsComponentData 只是一个 abstractClass , 它的运行时实例化发生在什么时候呢?
运行时,是一个 object:
找到一个 Component Data provider:
最终答案是,SAP Spartacus 开发团队,设计了一个统一的 cms-injector.service.ts, 用于为所有 CMS Component 统一注入 CmsComponentData. 因为注入时需要编写自定义代码,所以以 useFactory 的方式注入。
更多Jerry的原创文章,尽在:"汪子熙":















网友评论