Office Fabric UI I [component] StyleProp与I [component] Styles界面的使用

时间:2018-11-12 15:41:35

标签: reactjs typescript sharepoint web-parts office-ui-fabric

在Office Fabric UI文档中,每个组件都有两个接口,例如

https://developer.microsoft.com/en-us/fabric#/components/nav

INavStyleProps界面

INavStyles界面

实现INavStyleProps的组件可以采用任何列出的道具来自定义样式,例如

我想知道是否有任何方法可以与通过文档公开的INavStyles类进行交互;除了列出的类和样式之外,实现INavStyles接口本质上是为组件的使用者保证的。有没有一种方法可以重写,自定义或与通过此接口公开的类进行交互,类似于我们可以使用props与实现INavStylesProps的组件进行交互的方式。

1 个答案:

答案 0 :(得分:1)

此处link显示了Nav的两个界面的使用。这是我们为Nav提供默认样式的方式。

为了覆盖任何INavStyles area的默认样式,您可以使用styles道具并将一个styleFunctionOrObject传递给它。从提供的第一个链接中可以看到,INavStyleProps用于传递某些值,以用于Nav或布尔值的部分样式中,以具有条件样式。另外,这就是我们将主题传递给样式的方式。

您可以传递给styles道具的样式函数看起来与我们用来提供默认样式(减去getGloballClassNames的样式函数)完全一样。另外,如果您只想对一个区域进行样式设置,则返回类型应为Partial<INavStyles>,因为所有区域都是必需的,并且如果您不为所有区域都提供样式,则会返回。

让我知道这是否消除了如何使用两个接口的困惑。