npm i styled-components
npm i -D @types/styled-components @swc/plugin-styled-components
{
"jsc": {
"experimental": {
"plugins": [
[
"@swc/plugin-styled-components",
{
"displayName": true,
"ssr": true
}
]
]
}
}
}
import styled from 'styled-components';
const Paragraph = styled.p`
color: #00F;
`;
export default function Greeting() {
return (
<Paragraph>
Hello, world!
</Paragraph>
);
}
Styled Component를 베이스로 다른 Styled Component 만들기
import styled from 'styled-components';
const Paragraph = styled.p`
color: #00F;
`;
const BigParagraph = styled(Paragraph)`
font-size: 5rem;
`;
export default function Greeting() {
return (
<BigParagraph>
Hello, world!
</BigParagraph>
);
}
일반 컴포넌트를 베이스로 Styled Component 만들기
import styled from 'styled-components';
function HelloWorld({ className }: React.HTMLAttributes<HTMLElement>) {
return (
<p className={className}>
Hello, world!
</p>
);
}
const Greeting = styled(HelloWorld)`
color: #00F;
`;
export default Greeting;