๐Ÿ“To locate the bad setState() call inside ๊ฒฝ๊ณ ๋ฌธ ํ•ด๊ฒฐ

10_2pangยท2023๋…„ 6์›” 5์ผ
0

โšฝ๏ธํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

๋ชฉ๋ก ๋ณด๊ธฐ
41/94
post-thumbnail

๐Ÿ‘จโ€๐Ÿ’ปย ์‚ฌ๊ฑด


  • ํŒ€ํ”„๋กœ์ ํŠธ ์ค‘ ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ ๋ถ€๋ถ„์—์„œ To locate the bad setState() call insideโ€ฆ ์ด node ํ™˜๊ฒฝ์—์„œ warning์œผ๋กœ ๋ฐœ์ƒํ•˜์—ฌ ํ•ด๊ฒฐํ•ด ๋ณด๊ณ ์ž ํ•˜์˜€๋‹ค.

โœ…ย ํ•ด๊ฒฐ


๋ถ€๋ชจ์š”์†Œ๋กœ props๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ›์•„์˜จ setState ํ•จ์ˆ˜๊ฐ€ useEffect๋กœ ๊ด€๋ฆฌ๊ฐ€ ์•ˆ๋˜์–ด์ง€๊ณ  ์žˆ์–ด์„œ ๋ฐœ์ƒํ•œ warning ๋ฌธ๊ตฌ์˜€๋‹ค. ๊ทธ๋ž˜์„œ, useEffect๋ฅผ ํ†ตํ•˜์—ฌ ๊ด€๋ฆฌ๋ฅผ ํ•˜๋‹ˆ warning ๋ฌธ๊ตฌ๊ฐ€ ์‚ฌ๋ผ์กŒ๋‹ค.

const ImageUploadButton = ({ className, setUploadImg, uploadImg, inputRef }) => {
  ...
  setUploadImg(image);
	...
const ImageUploadButton = ({ className, setUploadImg, uploadImg, inputRef }) => {
  ...
  useEffect(() => {
    setUploadImg(image);
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, [image]);
	...

๐Ÿ’ญย ๊ฐœ์„ 


Error ๊ฐ€ ์•„๋‹Œ, warning ์ด๋ผ๋„ ์ž˜ ์‚ดํŽด๋ณด๊ณ  ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…ํ•˜๋Š” ์ž์„ธ๋ฅผ ๊ฐ€์ง€๋Š”๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ซ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

profile
์ฃผ๋‹ˆ์–ด ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž ์ด๊ด‘๋ ฌ ์ž…๋‹ˆ๋‹ค ๐ŸŒธ

0๊ฐœ์˜ ๋Œ“๊ธ€