cxOutlet合集
SAP Spartacus自定义指令cxOutlet的工作原理
SAP Spartacus table cell如何通过cxOutlet在运行时动态注入组件
SAP Spartacus 重用组件cx-table的设计原理
SAP Spartacus cxOutlet里的templatesRefs的填充逻辑
SAP Spartacus cxOutlet里的元数据存储,outlet名称和待渲染Component的映射关系
如下图所示:
传入cxOutlet这个自定义指令的值是:table.orgUnit.data.name:
cxOutlet自定义Directive的ngOnChanges方法里,进行Component的渲染,通过方法this.render实现:
vcr: View Container Reference
this.vcr.createEmbeddedView
每个outlet都有before, replace和after三个position:
传入cxOutlet自定义指令的SimpleChanges结构的值:
在cxOutlet的实现文件outlet.service.ts里,有一个叫做templatesRefs的存储结构,after,before,replace都指向一个map,key为outlet名称,可以理解成ABAP系统里的BAdI definition name,而value,指向一个数组,元素类型为ComponentFactory$1, 其中componentType指向ToggleLinkCellComponent,而selector即ToggleLinkCellComponent对应的selector.
cx-org-toggle-link-cell: