seb*_*nka 3 css reactjs styled-components
我正在尝试使用来扩展React组件的样式,styled-components但无法正常工作。AFAIK,我的做法是正确的,但也许我遗漏了一些东西...这是我所拥有的:
import React from "react";
import styled from "styled-components";
const TextContainer = ({ text }) => {
return <p dangerouslySetInnerHTML={{ __html: text }} />;
};
const Paragraph = styled(TextContainer)`
background: red;
`;
class Home extends React.Component {
render() {
const { t } = this.props;
return <Paragraph text="This is a test" />;
}
}
export default Home;
Run Code Online (Sandbox Code Playgroud)
当然,预期的结果是在上带有红色背景p,但是现在输出看起来像这样:
关于如何解决这个问题的任何想法?可能我缺少了一些东西,但我不知道是什么。
谢谢是前进!
Mos*_*ini 11
如文档中所述:
风格化的方法完美的作品在所有你自己或任何第三方组件的,因为只要它们连接的传递的className 道具 DOM元素。
例
// This could be react-router-dom's Link for example
const Link = ({ className, children }) => (
<a className={className}>
{children}
</a>
);
const StyledLink = styled(Link)`
color: palevioletred;
font-weight: bold;
`;
render(
<div>
<Link>Unstyled, boring Link</Link>
<br />
<StyledLink>Styled, exciting Link</StyledLink>
</div>
);
Run Code Online (Sandbox Code Playgroud)
参考:https : //www.styled-components.com/docs/basics#styling-any-components