[ Props란 무엇인가? ]
안녕하세요. Kim.YJ 입니다.
이번 포스팅은 React Props에 대해 포스팅 해 보겠습니다.
React Props에 대해 함께 알아 봅시다.
[ React Props란? ]
React에서 컴포넌트를 반복 사용하다보면, 재사용성의 제한을 받게 됩니다.
이 재사용성의 용이함을 위해 Props를 이용하여 구성요소가 데이터를 받거나,
처리하고 보내기 위해 사용됩니다.
- Props 특징
- 불변의 데이터
- 부모로부터 전달되는 데이터
- 변경 불가
[ Props 응용 예시 ]
Props의 예시를 확인해 보겠습니다.
먼저 Test component를 생성하여 줍니다.
img, h1, p 태그의 데이터를 직접적으로 넣어 주지 않고 재사용성을 위해,
속성으로 원하는 key와 value 들을 명시하면 props라는 객체로 데이터를 전달합니다.
props로 전달받은 key값을 url, name, title 로 각각의 value 데이터를 받아옵니다.
import React from "react";
import "./Test.scss";
export default function Test({ url, name, title }) {
return (
<div className="box">
<img className="img" src={url} alt="이미지" />
<h1 className="name">{name}</h1>
<p className="title">{title}</p>
</div>
);
}
그렇게 사용하는 곳에서 key 값 url, name, title 를 이용해서,
각기다른 value 데이터를 적용해서 동일한 component를 재사용 할수 있습니다.
import Test from "./components/Test/Test";
function App() {
return (
<>
<Test
url="https://images.unsplash.com/photo-1674376906038-a18fed600a55?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHx0b3BpYy1mZWVkfDExfHRvd0paRnNrcEdnfHxlbnwwfHx8fA%3D%3D&auto=format&fit=crop&w=500&q=60"
name="토마스"
title="기관차"
/>
<Test
url="https://images.unsplash.com/photo-1675541744669-c4796e241421?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHx0b3BpYy1mZWVkfDEyfHRvd0paRnNrcEdnfHxlbnwwfHx8fA%3D%3D&auto=format&fit=crop&w=500&q=60"
name="둘리"
title="공룡"
/>
<Test
url="https://images.unsplash.com/photo-1675505657657-d69fada7287c?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHx0b3BpYy1mZWVkfDE1fHRvd0paRnNrcEdnfHxlbnwwfHx8fA%3D%3D&auto=format&fit=crop&w=500&q=60"
name="개구리"
title="양서류"
/>
</>
);
}
export default App;
위 출력 화면 이미지와 같이 하나의 컴포넌트에서 서로 다른 데이터를 Props로 전달 받아
출력되는 것을 확인할 수 있습니다.
이렇게 재사용성이 용이한 컴포넌트를 사용할 수 있습니다.
React component의 재사용성을 위한 Props란 무엇인지
간단한 사용 예시를 통해 알아 보았습니다.
지금까지 Props에 대해 포스팅을 통해 알아 보았습니다.
다음 포스팅은 React 대한 더 자세한 정보로 찾아뵙겠습니다.
감사합니다!