Reactjs 使用'styles'prop或'className'prop+`合并样式集`?

Reactjs 使用'styles'prop或'className'prop+`合并样式集`?,reactjs,office-ui-fabric-react,fluent-ui,Reactjs,Office Ui Fabric React,Fluent Ui,新的流畅的用户界面反应 我一直在修补这个框架,并通读了我能找到的所有文档。我的理解是,当涉及到组件样式时,JS中的CSS方法是受鼓励的。我看到有两种方法可以做到这一点——通过样式道具和使用合并样式集实用程序功能+类名道具。这里有一个例子来说明我在这里的意思 我的问题是,它们是服务于不同的用例还是几乎相同?我如何决定使用哪一个?谢谢。我已经尝试了这两种方法,并且更倾向于合并样式集,因为它为我提供了一种可以预测地确定所有目标的方法,而且我不必了解隐藏在每个组件中的“神奇类名”以及它会或不会影响什么。

新的流畅的用户界面反应

我一直在修补这个框架,并通读了我能找到的所有文档。我的理解是,当涉及到组件样式时,JS中的CSS方法是受鼓励的。我看到有两种方法可以做到这一点——通过
样式
道具和使用
合并样式集
实用程序功能+
类名
道具。这里有一个例子来说明我在这里的意思


我的问题是,它们是服务于不同的用例还是几乎相同?我如何决定使用哪一个?谢谢。

我已经尝试了这两种方法,并且更倾向于合并样式集,因为它为我提供了一种可以预测地确定所有目标的方法,而且我不必了解隐藏在每个组件中的“神奇类名”以及它会或不会影响什么。话虽如此,对于某些关键组件,如DataGrid,涉及到很多样式,公开的类不太难学习,有助于充分利用这些组件

当您必须为诸如“悬停”、“活动”或“之前/之后”之类的内容执行选择器时,情况尤其如此。与直接在原始HTML上使用“mergeStyles”方法相比,试图通过“styles”公开的魔法类名来实现这一点对我来说要复杂得多

所以对我来说,我一直在从框架中挑选,将其用于颜色主题、立面和高度复杂的组件,如DataGrid,但不用于堆栈或堆栈项