在Office Fabric UI文档中,每个组件都有两个接口,例如
https://developer.microsoft.com/en-us/fabric#/components/nav
有
INavStyleProps界面
和
INavStyles界面
实现INavStyleProps的组件可以采用任何列出的道具来自定义样式,例如
我想知道是否有任何方法可以与通过文档公开的INavStyles类进行交互;除了列出的类和样式之外,实现INavStyles接口本质上是为组件的使用者保证的。有没有一种方法可以重写,自定义或与通过此接口公开的类进行交互,类似于我们可以使用props与实现INavStylesProps的组件进行交互的方式。
答案 0 :(得分:1)
此处link显示了Nav的两个界面的使用。这是我们为Nav提供默认样式的方式。
为了覆盖任何INavStyles
area的默认样式,您可以使用styles
道具并将一个styleFunctionOrObject传递给它。从提供的第一个链接中可以看到,INavStyleProps
用于传递某些值,以用于Nav
或布尔值的部分样式中,以具有条件样式。另外,这就是我们将主题传递给样式的方式。
您可以传递给styles
道具的样式函数看起来与我们用来提供默认样式(减去getGloballClassNames
的样式函数)完全一样。另外,如果您只想对一个区域进行样式设置,则返回类型应为Partial<INavStyles>
,因为所有区域都是必需的,并且如果您不为所有区域都提供样式,则会返回。
让我知道这是否消除了如何使用两个接口的困惑。