1

我正在使用定制器组件将特定主题和样式应用于我的 Fabric/Fluent 组件。

我还想从定制器属性中定制图标。

Customizer 组件源代码中有一段文字说明:

Customizer 组件允许将默认道具混合到使用 custom() 装饰器装饰的组件中,或者使用样式化的 HOC。这启用了注入场景,例如:

  1. 渲染 svg 图标而不是所有按钮中的图标字体
  2. 将自定义主题对象注入组件

这是否意味着可以更改定制器道具中的图标?

我创建了一个CodePen来说明我的问题。

const buttonProps = {
  text: "My Button",
  iconProps: {
    iconName: "Delete"
  }
};

const customizerProps = {
  scopedSettings: {
    DefaultButton: {
      styles: ButtonStyles,
      iconProps: {
        iconName: "Cancel" // replace original icon with this
      }
    }
  }
};

<DefaultButton { ...buttonProps } />
<Customizer { ...customizerProps }>
  <DefaultButton { ...buttonProps } />
</Customizer>

我有两个带有 iconProps 的 DefaultButtons。我想使用定制器来更改第二个按钮的图标,但只更改样式。

是否有可能做到这一点?

4

0 回答 0