WEB/REACT

[React] render() ํ•จ์ˆ˜

mingzoo 2020. 12. 30. 13:08

renderํ•จ์ˆ˜์— ๋Œ€ํ•œ ๊ถ๊ธˆ์ฆ์€ ์˜ค๋Š˜ ์ปดํฌ๋„ŒํŠธ์— ๊ด€ํ•œ ๋ฆฌ์•กํŠธ ๊ณต์‹๋ฌธ์„œ๋ฅผ ๋ณด๋‹ค๊ฐ€ ์‹œ์ž‘๋๋‹ค.

ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์™€ ํด๋ž˜์Šคํ˜• ์ปดํฌ๋„ŒํŠธ์˜ ์ฐจ์ด์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€๋ฅผ ํ•˜๋‹ค๊ฐ€ renderํ•จ์ˆ˜์— ๋Œ€ํ•œ ์˜๋ฌธ์ด ์ƒ๊ฒผ๋‹ค.

React ๊ณต์‹๋ฌธ์„œ

์œ„ ๋ฌธ์„œ๋ฅผ ๋ณด๋‹ค๊ฐ€ ์ง€๊ธˆ๊นŒ์ง€ ์˜ˆ์ œ๋กœ ์ž‘์„ฑํ•ด๋ดค๋˜ ์ฝ”๋“œ๋“ค๊ณผ ๋‹ค๋ฅด๊ฒŒ ReactDOM.render๋ผ๋Š” ํ•จ์ˆ˜๊ฐ€ ์“ฐ์ธ๊ฒƒ์„ ๋ณด๊ฒŒ ๋˜์—ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€๋Š” ํด๋ž˜์Šคํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ state๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด์„œ renderํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ ๋ฐ–์— ์—†์—ˆ๋Š”๋ฐ ReactDOM.renderํ•จ์ˆ˜๋Š” ๊ณผ์—ฐ ์–ด๋””์— ์“ฐ์ด๋Š” ๊ฒƒ์ผ๊นŒ?๋ผ๋Š” ๊ถ๊ธˆ์ฆ์— ์ด๊ณณ์ €๊ณณ์— ์ฐพ์•„๋ณด์•˜๋‹ค.

 

renderํ•จ์ˆ˜์— ๋Œ€ํ•œ ๊ณต์‹๋ฌธ์„œ(ko.reactjs.org/docs/react-dom.html#render)๋ฅผ ๋ณด๊ฒŒ ๋˜์—ˆ์„ ๋•Œ,

ReactDOM.renderํ•จ์ˆ˜๋Š” ์ตœ์‹ ์˜ React ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ฐ˜์˜ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ DOM๋งŒ ๋ณ€๊ฒฝํ•œ๋‹ค. 

 

๊ฒฐ๋ก โ—

์ปดํฌ๋„ŒํŠธ์— ์ƒ์„ฑํ•˜๋ƒ, html ํƒœ๊ทธ์— ์ƒ์„ฑํ•˜๋ƒ์— ๋”ฐ๋ผ์„œ

์ „์ž๋Š” class์—์„œ return, ํ›„์ž๋Š” ReactDOM.render๋ฅผ ์‚ฌ์šฉ

 

์‚ฌ์‹ค,,,์•„์ง๋„ ์™„๋ฒฝํ•˜๊ฒŒ ์ดํ•ด๊ฐ€ ๋‹ค ์•ˆ๋˜์—ˆ๋‹ค...๐Ÿ˜ญ๐Ÿ˜ง

๋‹ค์Œ์— ๋ง‘์€ ์ •์‹ ์œผ๋กœ ๋‹ค์‹œ ๋ด์•ผ๊ฒ ๋‹ค

 

 

-------------

2023๋…„์— ์ˆ˜์ • ์ถ”๊ฐ€ํ•˜๊ธฐ

 

์ด ๊ธ€์„ ์–ด์ฉŒ๋‹ค๊ฐ€ ๋ณด๊ฒŒ๋˜์—ˆ๋Š”๋ฐ ๋„ˆ๋ฌด ์ฐฝํ”ผํ•˜๋‹ค

์ด๋•Œ์˜ ๋‚˜..๊ต‰์žฅํžˆ ๋ฌด์ง€ํ–ˆ๊ตฌ๋‚˜..

์ƒ๊ฐ๋ณด๋‹ค ๋„์›€์•ˆ๋˜๋Š” ๊ธ€์— ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ฐพ์•„์ฃผ๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ๊ธ€์„ ๋‚ด๋ฆด๊นŒ๋„ ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์ด๋•Œ์˜ ๋‚˜๋„ ๋‚˜๋‹ˆ๊นŒ ๋ญ”๊ฐ€ ๊ทธ๋ž˜๋„ ์กฐ๊ธˆ ๋ฐœ์ „ํ–ˆ๋‹ค๋Š” ๊ฒƒ์„ ๊ธฐ๋กํ•˜๊ธฐ ์œ„ํ•ด ์ง€๊ธˆ์˜ ๋‚ด๊ฐ€ ์กฐ๊ธˆ ์ถ”๊ฐ€์ •๋„๋งŒ ํ•˜๊ฒ ๋‹ค.

์›๋ž˜ ๋ฆฌ๋ Œ๋”๋ง์— ๋Œ€ํ•ด ๊ธ€์„ ์“ฐ๋ ค๊ณ  ํ–ˆ์—ˆ์–ด์„œ ์—ฌ๊ธฐ์—์„œ๋Š” ๊ฐ„๋‹จํ•˜๊ฒŒ ํ๋ฆ„ ์ดํ•ด์ •๋„๋งŒ ๋„์™€์ค„ ์ˆ˜ ์žˆ๋„๋ก ์ž‘์„ฑํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.

 

์ด์ œ ๋ Œ๋”ํ•จ์ˆ˜ ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๋ Œ๋”๋ง์˜ ๊ฐœ๋…์„ ์•Œ๋ฉด๋œ๋‹ค.

๋ Œ๋”๋ง์€ ์‰ฝ๊ฒŒ ํ™”๋ฉด์— ๋„์šฐ๋Š” ๊ณผ์ •์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

๋‚ด๊ฐ€ ์“ด ์ฝ”๋“œ๊ฐ€ ํ™”๋ฉด์— ๋„์›Œ์ง€๋Š” ๊ฒƒ, ๊ทธ๋ž˜์„œ ๋ฆฌ๋ Œ๋”๋ง์€ ์‰ฝ๊ฒŒ ์ƒˆ๋กœ๊ณ ์นจ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์กฐ๊ธˆ ์ดํ•ด๊ฐ€ ํŽธํ•ด์กŒ์—ˆ๋‹ค.

 

์ง€๊ธˆ ์กธ์—…ํ”„๋กœ์ ํŠธํ•˜๋‹ค๊ฐ€ ์ด๊ฑธ ์“ฐ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์ด๊ฑฐ ์“ฐ๋‹ค๊ฐ€๋Š” ์˜ค๋Š˜ ํ•˜๋ฃจ๊ฐ€ ์ง€๋‚˜๊ฐˆ ๊ฒƒ ๊ฐ™์•„์„œ ์ผ๋‹จ์€ ๊ณผ์ œ ์ข€ ํ•˜๋Ÿฌ ๊ฐ€๊ฒ ์Šต๋‹ˆ๋‹ค..

ํˆฌ๋น„์ปจํ‹ฐ๋‰ด๋“œ..

 

์ผ๋‹จ 21๋…„์— ์ ์–ด๋†“์€ ๋ฆฌ๋ Œ๋”๋ง ๊ธ€์„ ์ฐธ๊ณ ํ•ด๋„ ์ข‹์„๊ฒƒ๊ฐ™์•„์„œ ์•„๋ž˜ ๊ธ€ ์ฒจ๋ถ€ํ•ด๋†“๊ฒ ์Šต๋‹ˆ๋‹น,,

 

[React] Rerendering(๋ฆฌ๋ Œ๋”๋ง)

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

minjoo-space.tistory.com

 

728x90