SAP Spartacus 重用组件cx-table的设计原理
2021-03-08 本文已影响0人
华山令狐冲
cx-table在SAP Spartacus尤其是B2B feature里有着广泛的用途:

它是一个shared Component,布局实现文件:table-component.html:

其中表格栏由td和cx-table-data-cell实现:

查看table.component.html里verticalLayout这个分支:

做个验证:

在渲染出来的页面里看到了ffffairy,说明这个分支我们找对了:

定义一个局部变量cell, 其值来自structure.cells,

再把cell的值赋给td的class属性。
最终渲染出的代码里,这个cx-table-data-cell是哪里来的?

这就得从我们自定义的OutletDirective指令说起。

我们需要计算一个string值赋给以cxOutlet为selector的指令。具体工作原理,参考Jerry后续的文章:SAP Spartacus自定义指令cxOutlet的工作原理。
更多Jerry的原创文章,尽在:"汪子熙":
