[ํ•ญํ•ด99] Day15. TIL โ€“ ์ฃผํŠน๊ธฐ ์ž…๋ฌธ์‹œ์ž‘ / ๋ผ์ดํ”„ ์‚ฌ์ดํด์ด๋ž€?

2022. 2. 18. 01:17ยท ๊ฐœ๋ฐœ/โ›ต ํ•ญํ•ด99
๋ชฉ์ฐจ
  1. ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Today I Learned ๐Ÿ“š
728x90
๋ฐ˜์‘ํ˜•

๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Today I Learned ๐Ÿ“š

 

 

โญ๋ผ์ดํ”„ ์‚ฌ์ดํด์ด๋ž€?

๋ผ์ดํ”„ ์‚ฌ์ดํด์„ ์ด์•ผ๊ธฐ ํ•˜๊ธฐ ์ „์— โ€˜๋ฆฌ์•กํŠธโ€™์˜ ํŠน์ง•์ ์ธ ๋ถ€๋ถ„์„ ๋จผ์ € ์ด์•ผ๊ธฐ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” View ์ค‘์‹ฌ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. html๋‹จ์œ„ ํ•˜๋‚˜ํ•˜๋‚˜๋ฅผ ๊ฐ์ฒด๋กœ ์ƒ๊ฐํ•˜๋Š” DOM์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ•˜์œ„ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฑธ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋•Œ ํŠธ๋ฆฌ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ˆ˜์ •๋  ๋•Œ๋งˆ๋‹ค ๋ชจ๋“  DOM์„ ๋’ค์ง€๊ณ  ์ˆ˜์ •ํ•  ๊ฑธ ์ฐพ๊ณ  ์ˆ˜์ •ํ•œ๋‹ค๋ฉด ๋ถˆํ•„์š”ํ•œ ์—ฐ์‚ฐ๋“ค์ด ์—„์ฒญ ๋งŽ์ด ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค.

๋ฆฌ์•กํŠธ๋Š” ์ด ๋ถ€๋ถ„์˜ ๋ณด์•ˆํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ์š”. ์ด๊ฒŒ ๊ฐ€์ƒDOM์ด๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ์กด DOM๊ณผ ์–ด๋–ค ํ–‰๋™ ํ›„ ์ƒˆ๋กœ ์—…๋Žƒ๋œ ๋ถ€๋ถ„์ด ๊ฐ€์ƒDOM์— ํ‘œํ˜„๋˜๊ณ  ๋‘ ๊ฐ€์ง€๋ฅผ ๋น„๊ตํ•ด์„œ ์ˆ˜์ •๋œ ๋ถ€๋ถ„์€ ๋ฐ”๊ฟ”์ค๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ๋ถˆํ•„์š”ํ•œ ์—ฐ์‚ฐ๋“ค์ด ์ผ์–ด๋‚  ํ•„์š”๊ฐ€ ์—†๊ฒ ์ฃ ?
๋ฆฌ์•กํŠธ์—์„œ๋Š” ์ปดํฌ๋„ŒํŠธ๋ผ ๋ถˆ๋ฆฌ๋Š” ๊ฑธ ์‚ฌ์šฉํ•ด์„œ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค! ์ปดํฌ๋„ŒํŠธ๋“ค๋ผ๋ฆฌ props ๋ผ ๋ถˆ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ ๊ฐ’์„ ์ฃผ๊ณ  ๋ฐ›์œผ๋ฉฐ ์ปดํฌ๋„ŒํŠธ์— ์ฃผ๊ธฐ๋ผ๋Š” ๊ฒƒ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค

์ด ์ฃผ๊ธฐ๋ผ๋Š” ๊ฒƒ์„ ๋ผ์ดํ”„ ์‚ฌ์ดํด์ด๋ผ๊ณ  ๋งํ•˜๋Š”๋ฐ, ์ปดํฌ๋„ŒํŠธ์— ์ƒ์„ฑ(mount)๋˜๊ณ  ์ˆ˜์ •(update)๋˜๊ณ  ์‚ญ์ œ(unmount)๊นŒ์ง€๋ฅผ ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค.

 

  • ์ปดํฌ๋„ŒํŠธ๋Š” ์ƒ์„ฑ๋˜๊ณ  โ†’ ์ˆ˜์ •(์—…๋ฐ์ดํŠธ)๋˜๊ณ  โ†’ ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค.
  • ์ƒ์„ฑ์€ ์ฒ˜์Œ์œผ๋กœ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.
  • ์ˆ˜์ •(์—…๋ฐ์ดํŠธ)๋Š” ์‚ฌ์šฉ์ž์˜ ํ–‰๋™(ํด๋ฆญ, ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋“ฑ)์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐ”๋€Œ๊ฑฐ๋‚˜, ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ Œ๋”๋งํ•  ๋•Œ ์—…๋ฐ์ดํŠธ ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜์˜ ๊ฒฝ์šฐ์ฃ !
    • props๊ฐ€ ๋ฐ”๋€” ๋•Œ
    • state๊ฐ€ ๋ฐ”๋€” ๋•Œ
    • ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜์—ˆ์„ ๋•Œ(=๋ฆฌ๋ Œ๋”๋งํ–ˆ์„ ๋•Œ)
    • ๋˜๋Š”, ๊ฐ•์ œ๋กœ ์—…๋ฐ์ดํŠธ ํ–ˆ์„ ๊ฒฝ์šฐ! (forceUpdate()๋ฅผ ํ†ตํ•ด ๊ฐ•์ œ๋กœ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.)
  • ์ œ๊ฑฐ๋Š” ํŽ˜์ด์ง€๋ฅผ ์ด๋™ํ•˜๊ฑฐ๋‚˜, ์‚ฌ์šฉ์ž์˜ ํ–‰๋™(์‚ญ์ œ ๋ฒ„ํŠผ ํด๋ฆญ ๋“ฑ)์œผ๋กœ ์ธํ•ด ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํ™”๋ฉด์—์„œ ์‚ฌ๋ผ์ง€๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

 

 

โญ ์ฃผํŠน๊ธฐ (React) ์ž…๋ฌธ ์‹œ์ž‘

๋ฆฌ์•กํŠธ ์ž…๋ฌธ ๊ฐ•์˜๊ฐ€ ์‹œ์ž‘๋˜์—ˆ๋‹ค. ๊ฐœ์ธ ๊ณผ์ œ๋ถ€ํ„ฐ ํŒ€ ๊ณผ์ œ๊นŒ์ง€ ๋ถ€์—ฌ ๋ฐ›์•˜๊ณ  ์ƒˆ๋กœ์šด ํ•œ ์ฃผ๊ฐ€ ์‹œ์ž‘๋˜์—ˆ๋‹ค.

๊ธฐ๋‹ค๋ฆฌ๊ณ  ๊ธฐ๋‹ค๋ ธ๋˜ ๋ฆฌ์•กํŠธ ๊ฐ•์˜. ํ˜ผ์ž์„œ ๋…ํ•™์œผ๋กœ ๋ฆฌ์•กํŠธ๋ฅผ ๊ณต๋ถ€ํ–ˆ์—ˆ๊ธฐ์— ๋”์šฑ ๊ธฐ๋Œ€๋˜์—ˆ๋‹ค. ์˜์–ด ๊ฐ•์˜๋ฅผ ์ฃผ๋กœ ๋ด์™€์„œ ์‚ฌ์šฉ๋ฒ•์€ ์•Œ์•„๋„ ์ •ํ™•ํ•œ ๊ฐœ๋…์„ ์žก๋Š” ๋ถ€๋ถ„์ด ์Šค์Šค๋กœ ๋งŽ์ด ๋ถ€์กฑํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๊ณ , ๊ทธ๋ž˜์„œ ๋” ์ž์‹ ๊ฐ์ด ์—†์—ˆ๋˜ ๊ฒƒ๋„ ์žˆ์—ˆ๋‹ค.

๋ฆฌ์•กํŠธ ์ž…๋ฌธ ๊ฐ•์˜๋Š” ๋‚˜๊ฐ™์ด ๋ฆฌ์•กํŠธ๋ฅผ ์–ด๋А ์ •๋„ ์‚ฌ์šฉํ•ด๋ดค์ง€๋งŒ ๊ฐœ๋…์ด ๋ถ€์กฑํ•œ ์‚ฌ๋žŒ๋“ค์ด ๋ณด๊ธฐ์—๋Š” ๋น ๋ฅธ ์ดํ•ด๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ๋Š” ๊ฐ•์˜์˜€๋Š”๋ฐ, ์ฒ˜์Œ ๋ฆฌ์•กํŠธ๋ฅผ ์ ‘ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์€ ๋ง‰ ๋ชฐ์•„์น˜๋Š” ๋‚ด์šฉ๋“ค์— ์ •์‹ ์ด ์—†์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค.

ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์— ์ต์ˆ™ํ•œ ๋‚ด๊ฐ€ ํด๋ž˜์Šคํ˜•๋„ ๋ฐฐ์šฐ๊ฒŒ ๋œ ์ ๋„ ์ข‹์•˜๋‹ค. ํด๋ž˜์Šคํ˜•์€ ๊ตฌ์กฐ๋งŒ ์–ด๋А์ •๋„ ์•Œ ๋ฟ ์ œ๋Œ€๋กœ ์‚ฌ์šฉํ•ด ๋ณธ์ ์ด ์—†์–ด์„œ ๋ฌด์ง€ํ•œ๋ฐ ๊ฐ•์˜์—์„œ ๋‘ ๊ฐ€์ง€ ๋ชจ๋‘๋ฅผ ์–ด๋А ์ •๋„ ๋ณด์—ฌ์ค€๋‹ค.

 

 

 

 

 

728x90

'๊ฐœ๋ฐœ > โ›ต ํ•ญํ•ด99' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ•ญํ•ด99] Day22. TIL โ€“ Redux๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ Context API ์‚ฌ์šฉ์˜ ์ฐจ์ด์   (0) 2022.02.19
[ํ•ญํ•ด99] Day16. TIL โ€“ React(๋ฆฌ์•กํŠธ) ์—์„œ JSX ๋ฐฐ์—ด ๋ฐ˜๋ณต๋ฌธ / React โ€“ Router v6 ๋ณ€ํ™”  (0) 2022.02.19
[ํ•ญํ•ด99] Week02. WIL โ€“ ECMAScript, ES๋ž€? ES5/ES6 ๋ฌธ๋ฒ• ์ฐจ์ด  (0) 2022.02.18
[ํ•ญํ•ด99] Day10. TIL โ€“ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€๋Š” ์Šต๊ด€์ด๋‹ค / ๋งํ•œ ํ•˜๋ฃจ  (0) 2022.02.18
[ํ•ญํ•ด99] Day09. TIL โ€“ For๋ฌธ์—์„œ Filter๋กœ ๊ฐ€๋Š” ๊ณผ๋„๊ธฐ (For๋ฌธ, Filter() ๊ณต๋ถ€)  (0) 2022.02.18
  1. ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Today I Learned ๐Ÿ“š
'๊ฐœ๋ฐœ/โ›ต ํ•ญํ•ด99' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ•ญํ•ด99] Day22. TIL โ€“ Redux๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ Context API ์‚ฌ์šฉ์˜ ์ฐจ์ด์ 
  • [ํ•ญํ•ด99] Day16. TIL โ€“ React(๋ฆฌ์•กํŠธ) ์—์„œ JSX ๋ฐฐ์—ด ๋ฐ˜๋ณต๋ฌธ / React โ€“ Router v6 ๋ณ€ํ™”
  • [ํ•ญํ•ด99] Week02. WIL โ€“ ECMAScript, ES๋ž€? ES5/ES6 ๋ฌธ๋ฒ• ์ฐจ์ด
  • [ํ•ญํ•ด99] Day10. TIL โ€“ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€๋Š” ์Šต๊ด€์ด๋‹ค / ๋งํ•œ ํ•˜๋ฃจ
๋ฐ(Ming) ๐Ÿˆโ€โฌ›
๋ฐ(Ming) ๐Ÿˆโ€โฌ›
๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Frontend Developer
๋ฐ(Ming) ๐Ÿˆโ€โฌ›
Ming devlog
๋ฐ(Ming) ๐Ÿˆโ€โฌ›
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ

๊ณต์ง€์‚ฌํ•ญ

  • About Ming ๐Ÿฐ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (261)
    • ๊ฐœ๋ฐœ (255)
      • ๐Ÿ“ TIL (58)
      • โŒ ์˜ค๋ฅ˜ ๋…ธํŠธ (23)
      • React (23)
      • Next.js (11)
      • React-Native (6)
      • JavaScript (10)
      • Flutter (19)
      • Database (1)
      • ๐Ÿ’ฌ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ (21)
      • ๐Ÿ“š English (9)
      • Etc... (25)
      • โ›ต ํ•ญํ•ด99 (49)
    • ๐Ÿ’ป Dev (6)
      • ๐Ÿ“ TIL (4)
      • ๐Ÿ’ฌ Algorithm (1)
      • Etc... (1)

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • Git
  • ํ”Œ๋Ÿฌํ„ฐ
  • ๋ถ€ํŠธ์บ ํ”„
  • ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ
  • nextjs
  • ํ•ญํ•ด99
  • ReactNative
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
  • ๊ฐœ๋ฐœ์žํšŒ๊ณ 
  • ๋ฆฌ์•กํŠธ๋„ค์ดํ‹ฐ๋ธŒ
  • Firebase
  • ์ฝ”๋”ฉ๊ณต๋ถ€
  • react
  • ๊ฐœ๋ฐœ์ž์ผ๊ธฐ
  • react-native
  • twid
  • leetcode
  • ๋ฆฌ์•กํŠธ
  • ์˜์–ด๊ณต๋ถ€
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
  • ์ฝ”ํ…Œ
  • flutter
  • github
  • ์ฝ”ํ…Œ๊ณต๋ถ€
  • ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉํด๋Ÿฝ
  • TIL
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • todaywhatidid
  • ์ด์ฝ”๋…ธ๋ฏธ์ŠคํŠธ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

250x250
hELLO ยท Designed By ์ •์ƒ์šฐ.v4.2.1
๋ฐ(Ming) ๐Ÿˆโ€โฌ›
[ํ•ญํ•ด99] Day15. TIL โ€“ ์ฃผํŠน๊ธฐ ์ž…๋ฌธ์‹œ์ž‘ / ๋ผ์ดํ”„ ์‚ฌ์ดํด์ด๋ž€?
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๊ฐœ์ธ์ •๋ณด

  • ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ
  • ํฌ๋Ÿผ
  • ๋กœ๊ทธ์ธ

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.