React에서 변수 데이터를 style 속성에 삽입하기
지난 강의에서는 객체를 style 속성에 직접 작성했습니다. 우리는 이 객체에 변수로부터 데이터를 삽입하여 사용할 수도 있습니다.
CSS 스타일이 없는 React 컴포넌트를 가져와 보겠습니다:
function App() {
return (
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
);
}
이제 변수를 생성하고 CSS 속성 값을 할당해 보겠습니다. div의 스타일부터 순서대로 시작하겠습니다.
컴포넌트 파일에서 return 명령문 전에 변수 wd1를 생성하고 값 '200px'을 할당하겠습니다:
const wd1 = '200px';
이와 유사하게 div의 모든 속성 값에 대한 변수를 생성하겠습니다:
const wd1 = '200px';
const br1 = '2px solid brown';
const pd1 = '10px';
const ta1 = 'center';
이제 첫 번째 문단에 대한 변수를 추가하겠습니다:
const co1 = 'orangered';
const fw1 = 'bold';
두 번째 문단에 대한 변수:
const fs1 = 'italic';
const co2 = 'brown';
마지막으로, 마지막 문단에 대한 변수입니다.
여기서는 세 개가 아닌 두 개의 변수만 필요합니다. 반복할 필요는 없습니다. 첫 번째 문단에 이미 bold 값이 있습니다:
const bco1 = 'orange';
const co3 = 'white';
이제 스타일 값을 가진 변수를 대입하겠습니다. 먼저 첫 번째 문단에 대해 해보겠습니다. 객체에서 값 대신 변수 co1와 fw1를 삽입하겠습니다:
<p style = {{ color: co1, fontWeight: fw1 }}>
text
</p>
나머지 태그들도 이와 유사하게 진행하겠습니다.
결과적으로 우리 컴포넌트의 코드는 다음과 같이 보일 것입니다:
function App() {
const wd1 = '200px';
const br1 = '2px solid brown';
const pd1 = '10px';
const ta1 = 'center';
const co1 = 'orangered';
const fw1 = 'bold';
const fs1 = 'italic';
const co2 = 'brown';
const bco1 = 'orange';
const co3 = 'white';
return (
<div style = {{
width: wd1,
border: br1,
padding: pd1,
textAlign: ta1 }}>
<p style = {{ color: co1, fontWeight: fw1 }}>
text
</p>
<p style = {{ fontStyle: fs1, color: co2 }}>
text
</p>
<p style = {{
backgroundColor: bco1,
fontWeight: fw1,
color: co3 }}>
text
</p>
</div>
);
}
이전 강의의 문제 해결 코드를 수정하여 CSS 속성 값이 변수에 저장되도록 하세요.