【问题标题】:Styled Components / React - Style on Fragment elementStyled Components / React - Fragment 元素上的样式
【发布时间】:2019-12-21 07:03:17
【问题描述】:

我对 StyledComponents 有疑问,是否可以使用 React.Fragment 或任何其他现有组件创建样式?

我使用这个例子(意图是Style ContainerFragment将背景绘制成蓝色并使用所有样式)

Codepen

如果不可能,是否存在另一种解决方法?显式以 Fragment 为例。


更新:我对这个question提出了一个具体问题。

【问题讨论】:

标签: reactjs styles styled-components


【解决方案1】:

如果您需要设置Fragment 的样式,那么您可能一开始就不应该使用它。 Fragments 存在作为返回相邻 JSX 元素的解决方法,它们不会向 DOM 呈现任何内容,因此它们不能被风格化。

这是不正确的:

const ContainerFragment = styled(React.Fragment)`
  border: 1px solid red;
  display: flex;
  height: 100vh;
  width: 100vw;
  justify-content: center;
  align-items: center;
  background: blue; 
`

片段不像div。它不会被渲染到常规的 html 元素

【讨论】:

【解决方案2】:

key 是唯一可以传递给Fragment 的属性。 将来,我们可能会添加对其他属性的支持,例如事件处理程序。

【讨论】:

    猜你喜欢
    • 2019-12-21
    • 2021-08-26
    • 2020-12-05
    • 2021-12-06
    • 2018-10-20
    • 2019-09-10
    • 1970-01-01
    • 2019-10-16
    • 2018-07-11
    相关资源
    最近更新 更多