何时在情感中使用样式化的组件与何时使用CSS道具?

时间:2020-05-09 07:43:41

标签: emotion

在决定何时使用样式化的组件而不是CSS道具时,是否存在最佳做法或优缺点列表?

1 个答案:

答案 0 :(得分:0)

我通常更喜欢styledComponent,但是在某些情况下,例如为react-router设置<Link />的样式,则必须为className属性提供编译样式。

使用CSS道具没有害处,但是,有可能会意外覆盖您的样式,而且这会使您的JSX变得更加混乱。但是,如果您知道自己在做什么并且正在大量使用composition,那么IMO就是一个非常强大的功能。

理解和管理样式化组件要容易得多,例如使用主题时,您可以将整个样式化逻辑封装在JSX之外。 +1到样式组件以进行基于乐高的设计。

我认为可以肯定地说,您可以将样式化组件和CSS一起使用,但是大多数组件可以采用其中一种。

我绝对喜欢您如何使用情感成分来覆盖基本组件(这可以避免我们传递奇怪的道具,并有助于使道具保持清洁),但与此同时,您不应滥用它,因为从个人经验中,它很容易吸引在应该使用isBold fontSize: "sm"等道具的地方使用CSS合成...