我有一个名为"CustomTileSection";其具有某一组组件(假设为8个组件,但组件的数量不是静态的,而是动态的(。我需要展示斯巴达克斯的组件。如何获取每个组件的数据,以便在UI中进行迭代和显示?
每个CMS页面槽都可以包含动态数量的CMS组件,要显示槽内有CMS组件,您应该:
- 例如,通过布局配置将CMS插槽添加到页面模板(但如果插槽是自定义的(:
LandingPage2Template: {
slots: [
'CustomSlot10',
],
},
此处提供更多详细信息https://sap.github.io/spartacus-docs/page-layout/.
- 通过
typeCode
将CMS组件映射到他的Angular实现:
ConfigModule.withConfig({
cmsComponents: {
YourComponentTypeCode: {
component: AngularComponent;
}
}
});
点击此处了解更多信息https://sap.github.io/spartacus-docs/customizing-cms-components/.
- 然后,您可以通过AngularComponent的构造函数中的
CmsComponentData
服务获取CMS组件:
public constructor(
public component: CmsComponentData<CmsYourComponent>
) {}
此处提供更多详细信息https://sap.github.io/spartacus-docs/customizing-cms-components/#accessing-cms组件中的cms数据。
请注意,如果所有CMS组件都有相同的typeCode
,您只需要映射一次,所有其他工作Spartacus都是自己完成的。