ํ”„๋ก ํŠธ์—”๋“œ/React

์ปดํฌ๋„ŒํŠธ ๋ Œ๋”๋ง

alswlfl 2022. 11. 23. 01:11

๋ Œ๋”๋ง์ด๋ž€?

์ปดํฌ๋„ŒํŠธ๊ฐ€ ํ˜„์žฌ props์™€ state์˜ ์ƒํƒœ์— ๊ธฐ์ดˆํ•˜์—ฌ UI๋ฅผ ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑํ• ์ง€ ์ปดํฌ๋„ŒํŠธ์—๊ฒŒ ์š”์ฒญํ•˜๋Š” ์ž‘์—…์„ ์˜๋ฏธ

 

DOM ์—…๋ฐ์ดํŠธ ๊ณผ์ •

1. render ๋‹จ๊ณ„: React.createElement๋กœ ์ƒ์„ฑ

2. reconciliation ๋‹จ๊ณ„: ์ด์ „ elements์™€ ์ƒˆ๋กœ ์ƒ์„ฑ๋œ elements ๋น„๊ต

3. commit ๋‹จ๊ณ„: DOM ์—…๋ฐ์ดํŠธ

 

re-render๋˜๋Š” ์ƒํ™ฉ

1. props๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ

2. state๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ

3. Context value๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ

4. ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๊ฐ€  re-render๋˜์—ˆ์„ ๋•Œ

 

→ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•: render๋‹จ๊ณ„์— ๋“ค์–ด๊ฐ€๋Š”(re-rendering)  ํšŸ์ˆ˜ ์ค„์ด๊ธฐ

 

[์ฐธ๊ณ ์‚ฌ์ดํŠธ]

https://yujonglee.com/reactrendering.html 

 

React ์ปดํฌ๋„ŒํŠธ ๋ Œ๋”๋ง ์ดํ•ดํ•˜๊ธฐ

(์ž‘์„ฑ ์ค‘)

yujonglee.com