如何在Spartacus中自定义核心组件?

时间:2020-06-09 03:47:12

标签: spartacus-storefront

是否可以自定义核心Spartacus组件(如cx-icon)?我需要扩展cx-icon以添加支持材质图标的功能,因此,每当我在应用程序中使用cx-icon时,材质图标就会呈现,而不是FontAwesome图标

PS-无法在cx-icon中配置材质图标,因为它不使用FontAwesome之类的CSS类,而是使用文本连字

1 个答案:

答案 0 :(得分:1)

我不确定,但是您可以尝试使用SVG Sprite来解决。您只需要下载SVG Sprite格式的材质图标(更多详细信息,请点击https://google.github.io/material-design-icons/),并使用如下自定义matIconConfig配置IconModule(更多详细信息,请点击https://sap.github.io/spartacus-docs/icon-library/):

export const matIconConfig: IconConfig = {
  icon: {
    symbols: {
      INFO: 'info', // Here you should add actual xlink to SVS symbol
    },
    resources: [
      {
        type: IconResourceType.SVG,
        url: './assets/mat-icons.svg',
        types: [ICON_TYPE.INFO],
      },
    ],
  },
};

然后通过以下方式将其合并到全局配置中:

ConfigModule.withConfig(matIconConfig);

当然,在调试过程中,也许您需要应用一些其他样式,但是我无法提供确切的样式。