Section2 Unit6 [React] React State & Props
๐ Chapter1. React State & Props
• ๋ฆฌ์กํธ๋ ๋จ๋ฐฉํฅ ๋ฐ์ดํฐ ํ๋ฆ(one-way data flow)์ ๊ฐ์ง๋ค. ๋ฐ๋ผ์ React์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋๋ ์ปดํฌ๋ํธ๋ค ๊ฐ์ ์ํธ ๊ด๊ณ์ ๋ฐ์ดํฐ์ ์ญํ , ๋ฐ์ดํฐ์ ํ๋ฆ์ ๊ณ ๋ คํ์ฌ์ผ ํ๋ค.
• state์ props ๋ชจ๋ ์ปดํฌ๋ํธ์ ๋ ๋๋ง ๊ฒฐ๊ณผ๋ฌผ์ ์ํฅ์ ์ฃผ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
props๋ ํจ์์ ๋งค๊ฐ๋ณ์์ฒ๋ผ ์ปดํฌ๋ํธ์ ์ ๋ฌ๋๋ ๋ฐ๋ฉด state๋ ํจ์ ๋ด์ ์ ์ธ๋ ๋ณ์์ฒ๋ผ ์ปดํฌ๋ํธ ์์์ ๊ด๋ฆฌ๋๋ค.
์ฆ, props๋ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ๋ ์ธ๋ถ์๋ฅผ ์ํ ๋ฐ์ดํฐ์ด๊ณ , state๋ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋๋ ๋ด๋ถ์๋ฅผ ์ํ ๋ฐ์ดํฐ์ด๋ค.
• ์ด๋ฒ ์ฑํฐ์์ React์ ๊ธฐ๋ณธ ๊ฐ๋ ์ธ state์ props๋ฅผ ํ์ตํ๊ณ , ์ด๋ฒคํธ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ๊ณผ controlled component๊ฐ ๋ฌด์์ธ์ง ํ์ตํ๋ค.
๋ฆฌ์กํธ์ ๊ธฐ๋ณธ์ธ state์ props๋ ๊ณต์๋ฌธ์์ ์ด์ ์ ๊ณต๋ถํ์๋ ์๋ฃ์ ์์ ๋ฅผ ํ์ฉํ๊ณ , ์ด๋ฒ์ ํ์ตํ ์ฝ๋์คํ ์ด์ธ ์ ์๋ฃ๋ฅผ ์ฐธ๊ณ ํ์ฌ ๋ฐ๋ก ์ ๋ฆฌํด๋ณด์๋ค.
ํนํ props๋ ๊ณ์ ํท๊ฐ๋ ธ์๋๋ฐ, ์ ๋ฆฌํ๋ฉด์ ๋ค์ ํ ๋ฒ ๊ฐ๋ ์ ์ ๋ฆฌํ ์ ์์ด์ ์๋ฏธ์๋ ์๊ฐ์ด์๋ค. ๐
๋ฆฌ์กํธ์ ๋ํด ๋ ๊ณต๋ถํ๊ณ ๋๋ฉด ๋ฆฌ์กํธ์ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ํ ์ ๋ฆฌ๋ ๋ค์ ํ ๋ฒ ํด๋ณด๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
๐ ์ค๋์ ํ๊ณ
์ฃผ๋ง์ด ์ง๋์ ๊ทธ๋ฐ์ง ํผ๊ณคํ๊ณ ์ง์ค๋ ฅ์ด ๋จ์ด์ง๋ ์์์ผ์ด์๋ค. ์ค๋ ์ ๊ท ์์ ์ดํ์ state์ props๋ฅผ ๋ณต์ตํ๋ ์๊ฐ์ ๊ฐ์ก๋๋ฐ, props์ ํท๊ฐ๋ฆฌ๋ ๋ถ๋ถ๋ค์ด ์ฝ๋๋ก ์ ๋ฆฌํ๋ค ๋ณด๋ ์ดํด๊ฐ ๋์๋ค. ๋ฆฌ์กํธ๋ ๋จ๋ฐฉํฅ ๋ฐ์ดํฐ ํ๋ฆ์ ๊ฐ์ง๊ณ ์์ด props๋ ๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก ์ ๋ฌ๋๋๊ฒ ๋ค์ฌ์ ์๊ฐํด๋ณด๋ฉด ์ ๋ง ๊ฐ๋จํ๊ฑด๋ฐ, ์ ์๊พธ ์ ๋ฌ๋ฐ๋ props๊ฐ ํท๊ฐ๋ ธ๋์ง ์ดํดํ๋ ค๊ณ console.log๋ฅผ ์ ๋ง ๋ง์ด ์ฐ์ด๋ดค์๋ค. ๊ธ๋ก ๋ณด๋ ๊ฒ๋ณด๋ค ๋์ผ๋ก ์ง์ ํ์ธํ๋ ๋ช ํํ๊ฒ ์ดํด๊ฐ ๋์ด์ ์๋ฏธ์๋ ์๊ฐ์ด์๋ค.
๋ฆฌ์กํธ์ ๋์์๋ฆฌ์ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ํด์๋ ์ข ๋ ์ฐพ์๋ณด๊ณ ์ถ์๋๋ฐ, ์ง๊ธ ์ฐพ์๋ณด๋ ์๋ฃ๋ค์ ๋ค ๋น์ทํ ์ด์ผ๊ธฐ๋ฅผ ํ๋ ๊ฒ ๊ฐ์์ ์กฐ๊ธ ๋ ๊ณต๋ถํ ํ์ ๋ค์ ์ฐพ์๋ณด๋ ๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
์ค๋ ์คํ ๋ผ์ด๋ธ ์ธ์ ์์ ์ฝ๋์คํ ์ด์ธ ์๋ฃ์์ด์๋ ํ ์ฝ๋์คํ ์ด์ธ ๊ฐ๋ฐ์ ๋ถ์ ์ด์ผ๊ธฐ๋ฅผ ๋ค์๋๋ฐ, ์ธ์๊น์๋ ๋ถ๋ถ์ด ์์๋ค. ๋๋ฅผ ์คํ ๋ฆฌํ ๋ง ํ ์ ์๋ ‘๋ฌด์ธ๊ฐ’๋ฅผ ํ๋๋ ๊ฐ์ง๊ณ ์๋ ๊ฒ ๋ง์ ๋์์ด ๋๋ค๋ ์ด์ผ๊ธฐ์๋ค. ๊ทธ๊ฒ ๋ธ๋ก๊ทธ๊ฐ ์๋๋๋ผ๋ ๋๋ฅผ ๊ธฐ๋กํ ์ ์๋, ํํํ ์ ์๋ ๋ฌด์ธ๊ฐ๋ฅผ ๊ฐ์ง๊ณ ์๋๊ฒ ์ค์ํ๋ค๋ ๊ฒ์ด์๋ค. ๋ด๊ฐ ๊ณต๋ถํ ๋ด์ฉ์ด ์ง๊ธ ๋น์ฅ์ ์ด๋๊ฐ์ ๊ธฐ๋กํด๋ ๋งํผ ๊ฐ์น๊ฐ ์๋ค๊ณ ์๊ฐ๋์ง ์์์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, ๊ทธ ๊ธฐ๋ก๊ณผ ๊ณ ๋ฏผํ ํ์ ์ด ์ค์ํ๋ค๋ ๋ป ๊ฐ์๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ง์ ๊ณต๊ฐ์ด ๋์๋ค.
์ค๋ ์ฝ๊ฐ ํผ๊ณคํ๊ณ ๋ฌด๊ธฐ๋ ฅํด์ ์ํ๊ฐ ๋ณ๋ก๋ผ ์์ ๋ค์ ๋๋ ์, ๊ทธ๋ ๊ตฌ๋ ํ๊ณ ๋๊ฒผ๋๋ฐ ์ง๊ธ ์๊ฐํด๋ณด๋ ์ด๋ฐ ์ธ์ ์ด ๋๋ฆ ๋๊ธฐ๋ถ์ฌ๋ ๋๋ ๊ฒ ๊ฐ๊ณ , ์์๊ฐ๋ ๋๋ผ๊ฒ ํด์ฃผ๋ ๊ฒ ๊ฐ๋ค.
'Frontend Dev > ๐ฅ ์ฝ๋์คํ ์ด์ธ FE ๋ถํธ์บ ํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Section2 Unit7 [HTTP/๋คํธ์ํฌ] ๊ธฐ์ด (0) | 2023.05.24 |
---|---|
Section2 Unit6 [React] React State & Props - ๊ณผ์ Twittler State & Props (0) | 2023.05.23 |
Section2 Unit5 [React] React SPA (0) | 2023.05.19 |
Section2 Unit4 [React] Intro (0) | 2023.05.18 |
Section2 Unit3 JS/Node ๋น๋๊ธฐ - fetchAPI (0) | 2023.05.17 |