Css-in-JS 란 ?
[ 자바스크립트로 CSS 코드를 작성하는 방식 ]
1 ) vs code 터미널에 yarn add styled-compornents 입력

2 ) js 파일에 styled-components import 해주기


* styled.뒤에( div 부분 )은 html 요소가 오면 된다.
1 ) StBox안에 p 태그를 추가

👇
2 ) const 로 p 태그에 css 속성을 만들어준다.

3 ) <p>태그로 깜쌌던 부분을 <StP>로 바꿔준다.

👇
결과 ) StP에 CSS 준 부분이 제대로 반영됨.

하드코딩 했던 것들을 map 함수를 사용해서 바꿔보자.
function App() {
return(
<StContainer>
<StBox borderColor="red" backgroundColor="teal"> 빨간 박스 </StBox>
<StBox borderColor="blue"> 파란 박스 </StBox>
<StBox borderColor="green"> 초록 박스 </StBox>
</StContainer>
);
}
👇
// props : 부모 컴포넌트 -> 자식 컴포넌트
// Box 에게 props를 통해서 조건부 스타일링이 가능 !
|
// 박스의 색
const boxList = ['red', 'blue', 'green', 'b'];
// 색을 넣으면 이름을 반환
const getBoxName = (color) =>{
switch (color) {
case 'red':
return "빨간 박스";
case 'green':
return "초록박스";
case 'blue':
return "파랑박스";
default:
return "검정박스";
}
}
|
|
function App() { return(
<StContainer>
{/* <StBox borderColor="red" backgroundColor="teal"> 빨 박스 </StBox> */}
{
boxList.map((box)=>{
return <StBox borderColor={box}>{getBoxName(box)}</StBox>
})
}
</StContainer>
);
}
|
map 함수 를 써서 box 하나하나 돌려주기 |
'React' 카테고리의 다른 글
| map / filter 함수 (0) | 2023.04.24 |
|---|---|
| React - state (0) | 2023.04.22 |
| React - Props (0) | 2023.04.22 |
| React JSX ( JavaScript + XML ) 연습 (0) | 2023.04.22 |
| React - 보모,자식 컴포넌트 (0) | 2023.04.22 |