๐Ÿ–ฅFrontEnd/React

๋ฆฌ์•กํŠธ ํ›… ์‚ฌ์šฉ ๊ทœ์น™

hellohailie 2022. 7. 26. 01:32

 

๋ฆฌ์•กํŠธ ํ›…์ด๋ž€?

๋‹จ์ˆœํžˆ use๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ชจ๋“  ํ•จ์ˆ˜์ด๋‹ค. 

 

์ธ์‡„ํ•ด์„œ ๋ฒฝ์— ๋ถ™์—ฌ๋‘๊ธฐ

 

 

2๊ฐ€์ง€ ๋ฉ”์ธ ๊ทœ์น™ + ์ถ”๊ฐ€1

 

๊ทœ์น™ 1. ๋ฆฌ์•กํŠธ ํ›…์€ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ ํ•จ์ˆ˜, ์ปค์Šคํ…€ ํ›… ํ•จ์ˆ˜์—์„œ๋งŒ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค. 

 

๊ทœ์น™ 2. ๋ฆฌ์•กํŠธ ํ›…์€ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ ํ•จ์ˆ˜ ๋˜๋Š” ์ปค์Šคํ…€ ํ›… ํ•จ์ˆ˜์˜ ์ตœ์ƒ์œ„ ์ˆ˜์ค€์—์„œ๋งŒ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค. (์ค‘์ฒฉํ•จ์ˆ˜์—์„œ, block๋ฌธ์—์„œ ํ˜ธ์ถœ x)

ex) if ๋ฌธ ์•ˆ์—์„œ, useEffect ์•ˆ์—์„œ ํ˜ธ์ถœ ๊ธˆ์ง€

 

์ถ”๊ฐ€ ๊ทœ์น™ 3. useEffect ํ›…์€ ํ•ญ์ƒ ์ฐธ์กฐํ•˜๋Š” ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์˜์กด์„ฑ์œผ๋กœ useEffect ๋‚ด๋ถ€์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค. 

** useReducer ๋˜๋Š” useState์— ์˜ํ•ด ๋…ธ์ถœ๋œ state ์—…๋ฐ์ดํŠธ ํ•จ์ˆ˜๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋„๋ก ๋ฆฌ์•กํŠธ๊ฐ€ ๋ณด์žฅํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์˜์กด์„ฑ์œผ๋กœ ๋„ฃ์„ ํ•„์š” ์—†๋‹ค. 

 

์ •๋ฆฌ => ๋ธŒ๋ผ์šฐ์ €์—์„œ ์˜ค์ง€ ์•Š๊ฑฐ๋‚˜, ๋˜๋Š” ์ปดํฌ๋„ŒํŠธ ํ•จ์ˆ˜ ์™ธ๋ถ€์—์„œ ์˜ค๋Š” ๋ฐ์ดํ„ฐ๋“ค์€ ์ฆ‰, useEffect๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์˜ค๋Š” ๋ฐ์ดํ„ฐ๋“ค์€ ์˜์กด์„ฑ ๋ฐฐ์—ด๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค. 

 

 

๐Ÿ˜ƒ ์ž˜๋ชป๋œ ๊ฐœ๋… ์ „๋‹ฌ์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ €์˜ ์„ฑ์žฅ์— ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค๐Ÿค“