참고자료
스타일드 컴포넌트 베스트 프랙티스
ComponentName
├─index.jsx
└─styles.js
임포트 할때 명명된 애를 가져올수 있지만(import { Headline } from
), import * as St
, import * as S
처럼 컨벤션을 따라 모든걸 가져오는 방법을 택할 수 있다.
모든걸 스타일드 컴포넌트화 할 수 있고,
const Section = styled.section`
border-bottom: 1px solid grey;
padding: 20px;
`;
const Headline = styled.h1`
color: red;
`;
const Text = styled.span`
padding: 10px;
`;
const Content = ({ title, children }) => {
return (
<Section>
<Headline>{title}</Headline>
<Text>{children}</Text>
</Section>
);
};
CSS에 익숙하다면, 아래처럼도 쓸 수 있다.
const Container = styled.section`
border-bottom: 1px solid grey;
padding: 20px;
h1 {
color: red;
}
.text {
padding: 10px;
}
`;
const Content = ({ title, children }) => {
return (
<Container>
<h1>{title}</h1>
<span className="text">{children}</span>
</Container>
);
};
DOM
요소에 직접적으로 넘겨줘선 안되는 props
는 $
를 앞에 붙여준다
margin
을 위한 컴포넌트를 만들지않고 Spacer
라는 컴포넌트 만들어보기(reference)
개발자로서 배울 점이 많은 글이었습니다. 감사합니다.