[React] ๋ฆฌ์กํธ - props ์ฌ์ฉ ๋ฐฉ๋ฒ
React์ props๋ ํ๋ง๋๋ก ์๊ธฐํ๋ฉด '์์ฑ'์ด๋ค.
์ค์ ๋ก properties์ ์ค์๋ง!
props๋ ์ปดํฌ๋ํธ๋ก ์ ๋ฌ๋๋ ๋งค๊ฐ๋ณ์๋ก, ์ปดํฌ๋ํธ์ ์ฌ์ฌ์ฉ์ฑ์ ๋์ด๊ณ ๋ฐ์ดํฐ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์๋๋ก ๋์์ค๋ค.์ฃผ๋ก ๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก ใ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ๋ ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
1. props ์ฌ์ฉ๋ฐฉ๋ฒ
props ์ ๋ฌํ๊ธฐ
๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก props๋ฅผ ์ ๋ฌํ ๋,
HTML ํ๊ทธ ์์ฑ์ ์ค์ ํ๋ ๊ฒ๊ณผ ์ ์ฌํ ๋ฐฉ์์ผ๋ก ์์ฑํ๋ค.
props ์ฌ์ฉํ๊ธฐ
์์ ์ปดํฌ๋ํธ์์๋ ์ ๋ฌ๋ฐ์ props๋ฅผ ์ด์ฉํ์ฌ
๋ค์ํ ๋ฐ์ดํฐ๋ฅผ ํ์ํ๊ฑฐ๋ ๋ก์ง์ ์ฌ์ฉํ ์ ์๋ค.
// ๋ถ๋ชจ ์ปดํฌ๋ํธ
function App() {
return (
<div>
<h1>์ฌ์ฉ์ ์ ๋ณด</h1>
<User name="๊น์ฒ ์" age={30} />
</div>
);
}
// ์์ ์ปดํฌ๋ํธ
function User(props) {
return (
<div>
<p>์ด๋ฆ: {props.name}</p>
<p>๋์ด: {props.age}</p>
</div>
);
}
export default App;
2. props ํน์ง
์ฝ๊ธฐ ์ ์ฉ
props ๋ ์์ ์ปดํฌ๋ํธ์์ ์์ ํ ์ ์๊ณ , ์ค์ง ์ฝ๊ธฐ๋ง ๊ฐ๋ฅํ ๋ฐ์ดํฐ์ ๋จ๋ฐฉํฅ์ ํ๋ฆ์ ์ ์งํ๋ค.
์ฌ์ฌ์ฉ์ฑ
๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ๋ค๋ฅธ props๋ก ์ฌ๋ฌ ๋ฒ ์ฌ์ฉํ ์ ์์ด ์ปดํฌ๋ํธ์ ์ฌ์ฌ์ฉ์ฑ์ด ์ฆ๊ฐํ๋ค.
// ๋ถ๋ชจ ์ปดํฌ๋ํธ
function App() {
return (
<div>
<h1>์ฌ์ฉ์ ์ ๋ณด</h1>
<User name="๊น์ฒ ์" age={30} />
<User name="์ค์ด์ง" age={33} />
<User name="์ค์์ฑ" age={23} />
</div>
);
}
// ์์ ์ปดํฌ๋ํธ
function User(props) {
return (
<div>
<p>์ด๋ฆ: {props.name}</p>
<p>๋์ด: {props.age}</p>
</div>
);
}
export default App;