๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
TIL -์ผ๊ฐ„ํ•™์Šต๊ธฐ๋ก/React

REACT - 21.12.26 - JSX, STATE, PROPS

by ___Jin 2021. 12. 26.

ํ•™์Šต๋ชฉํ‘œ

REACT &  JSX

  • React์˜ 3๊ฐ€์ง€ ํŠน์ง•์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•˜๊ณ , ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • JSX๊ฐ€ ์™œ ๋ช…์‹œ์ ์ธ์ง€ ์ดํ•ดํ•˜๊ณ , ๋ฐ”๋ฅด๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React ์ปดํฌ๋„ŒํŠธ(React Component)์˜ ํ•„์š”์„ฑ์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•˜๊ณ , ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • create-react-app ์œผ๋กœ ๊ฐ„๋‹จํ•œ ๊ฐœ๋ฐœ์šฉ React ์•ฑ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • SPA(Single-Page Application) ๊ฐœ๋…์„ ์ดํ•ดํ•˜๊ณ  ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • SPA์˜ ์žฅ, ๋‹จ์ ์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ณ  ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์™€์ด์–ดํ”„๋ ˆ์ž„์„ ๋ณด๊ณ  ์–ด๋Š ๋ถ€๋ถ„์„ ์ปดํฌ๋„ŒํŠธ๋กœ ๊ตฌ๋ถ„ํ•ด์•ผ ํ•  ์ง€ ์Šค์Šค๋กœ ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React์—์„œ npm์œผ๋กœ React Router DOM์„ ์„ค์น˜(npm install react-router-dom@5.3.0)ํ•˜๊ณ  ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React Router DOM๋ฅผ ์ด์šฉํ•˜์—ฌ SPA๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ผ์šฐํŒ… ๊ตฌ์กฐ๋ฅผ ์งค ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๊ณ , ์ด์— ํ•„์š”ํ•œ ๊ธฐ์ดˆ ๋ฌธ๋ฒ•๋“ค์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

STATE &  PROPS

  • State, Props์˜ ๊ฐœ๋…์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•˜๊ณ , ์‹ค์ œ ํ”„๋กœ์ ํŠธ์— ๋ฐ”๋ฅด๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React ํ•จ์ˆ˜ ์ปดํฌ๋„ŒํŠธ(React Function Component)์—์„œ State hook์„ ์ด์šฉํ•˜์—ฌ State๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React ์ปดํฌ๋„ŒํŠธ(React Component)์— Props๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  React์—์„œ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‹ค์ œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ณด๊ณ  ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ State์ด๊ณ  Props์— ์ ํ•ฉํ•œ์ง€ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‹ค์ œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์‹œ ์ ํ•ฉํ•œ State์™€ Props์˜ ์œ„์น˜๋ฅผ ์Šค์Šค๋กœ ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • React์˜ ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„(One-way data flow)์— ๋Œ€ํ•ด ์ž์‹ ์˜ ์–ธ์–ด๋กœ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค.
 

๋ฐœ๊ฒฌํ•œ๊ฒƒ

26์ผ ๋ฆฌ์•กํŠธ์—๋Œ€ํ•ด ์ƒ๊ฐ๋ณด๋‹ค ๋” ๋ชจ๋ฆ„

27์ผ ๋…ธ๋งˆ๋“œ ์ฝ”๋”๋ฅผ ๋ณด๋ฉฐ usestate,ํ•จ์ˆ˜, ์ด๋ฒคํŠธ๋ฆฌ์Šค๋„ˆ๋ฅผ ์‚ฌ์šฉํ• ์ˆ˜์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค. 


๋Š๋‚€์ 

26์ผ ๊ธฐ์ดˆ๋ฌธ๋ฒ•์„ ๋ชจ๋ฅด๋‹ˆ ์•Œ๊ฒ ๋‹ค ์‹ถ์€๊ฒƒ๋„ ์ ์šฉ์ด ์–ด๋ ต๋‹ค.

27์ผ html tag๊ณต๋ถ€๋„ , ์ด๋ฒคํŠธํƒ€์ž… ๊ณต๋ถ€๋„ ํ•„์š”ํ•˜๋‹ค ๋งŽ์ด ์•Œ์ˆ˜๋ก ๋‹ค์ฑ„๋กญ๊ฒŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.


๋‹ค์Œ ๊ณต๋ถ€๋ฐฉํ–ฅ

26์ผ ๋…ธ๋งˆ๋“œ์ฝ”๋” ์˜ํ™”์›น ์„œ๋น„์Šค ๋งŒ๋“ค๊ธฐ ์ง„ํ–‰

27์ผ ์•„!!!! useState ์ด์ œ ์ข€ ์•Œ๊ฒ ๋‹ค ใ… ใ… ์•„๋‹ˆ๊นŒ ์žฌ๋ฐ‹๋‹คใ…œใ…œใ…œ ์–ด์ด๊ตฌ ์„œ๋Ÿฌ์› ๋‹ค ์ฆ๋ง..

๋Œ“๊ธ€