useCallback()์ ํจ์๋ฅผ ๋ฉ๋ชจ์ด์ ์ด์ (memoization)ํ๊ธฐ ์ํด์ ์ฌ์ฉ๋๋ hook ํจ์์ ๋๋ค. ์ฒซ๋ฒ์งธ ์ธ์๋ก ๋์ด์จ ํจ์๋ฅผ, ๋๋ฒ์งธ ์ธ์๋ก ๋์ด์จ ๋ฐฐ์ด ๋ด์ ๊ฐ์ด ๋ณ๊ฒฝ๋ ๋๊น์ง ์ ์ฅํด๋๊ณ ์ฌ์ฌ์ฉํ ์ ์๊ฒ ํด์ค๋๋ค.์๋ฅผ ๋ค์ด, ์ด๋ค React ์ปดํฌ๋ํธ
โจ Camera on/off ๋์ฒด์ด๋ฏธ์ง > ๐ ๐จ์ด์ฌํ ํ๋ก์ ํธ ์ค ์์์น๋ชปํ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค ....๐จ useState๋ก ๊ด๋ฆฌํ๋ users state๊ฐ ๊ฐ์ด ๋ณ๊ฒฝ๋ ๊ฐ์ด ์ฐธ์กฐ๊ฐ ์๋๋ ๊ฒฝ์ฐ๊ฐ ์์๋๋ฐ์ ์ด์ฌํ ๊ตฌ๊ธ๋งํ๊ณ ์ฐพ์๋ณด๋ useRef๋ก ๊ฐ์ ์ ์ฅํด
React์์ ๊ตฌ์ฑ ์์๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๊ฑฐ๋ ์ฒ๋ฆฌํ๊ณ ๋ณด๋ด๊ธฐ ์ํด ์ฌ์ฉ๋๋ฉฐ, ์ฐจ์ด์ ์ ๊ฐ๋จํ๊ฒ ์ค๋ช ํ์๋ฉฐ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ๊ฐ๋ฅ์ฌ๋ถ์ด๋คState๋ ๋ด๋ถ (์ปดํฌ๋ํธ)์์ ์์ฑํ๊ณ ํ๋ํ๊ณ , ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ ์ ์์.Props๋ ์ธ๋ถ(๋ถ๋ชจ ์ปดํฌ๋ํธ)์์ ์์ ๋ฐ๋ ๋ฐ์ดํฐ์ด๋ฉฐ,
Redux๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ฑ์ ์ํ ์์ธก ๊ฐ๋ฅํ ์ํ ์ปจํ ์ด๋์ ๋๋ค. Redux๋ ์ฌ๋ฌ๋ถ์ด ์ผ๊ด์ ์ผ๋ก ๋์ํ๊ณ , ์๋ก ๋ค๋ฅธ ํ๊ฒฝ(์๋ฒ, ํด๋ผ์ด์ธํธ, ๋ค์ดํฐ๋ธ)์์ ์๋ํ๊ณ , ํ ์คํธํ๊ธฐ ์ฌ์ด ์ฑ์ ์์ฑํ๋๋ก ๋์์ค๋๋ค.๊ณต์ํํ์ด์ง์์์ ๋ฆฌ๋์ค ์ค๋ช ์ด๋ค.๋ด๊ฐ ์ดํดํ ๋ฆฌ๋์ค
ํญํด99 ์ด๋ฒ ์ฃผ์ฐจ์ ํ๊ณผ์ ๋ก ์งํํ ๊ฐ๋ ์ ๋ฆฌ๋ฌธ๋ ธ์ ๋งํฌ - https://teamsparta.notion.site/React-2-e21a43014e924ad487369fda21d6f205์๋ฐ์คํฌ๋ฆฝํธ์์ ์ ์ฌ๋ฐฐ์ด๊ณผ ๋ฐฐ์ด์ ์ฐจ์ด๋ ๋ฌด์์ผ๊น์?์ ์ฌ๋ฐฐ์ด์ ๊ฐ ์์๋ฅผ
ํ๋กํผํฐ(props)๋?ํ๋กํผํฐ, props(properties์ ์ค์๋ง) ๋ผ๊ณ ํ๋ค.์์ ์ปดํฌ๋ํธ๊ฐ ํ์ ์ปดํฌ๋ํธ์ ๊ฐ์ ์ ๋ฌํ ๋ ์ฌ์ฉํ๋ค.(๋จ๋ฐฉํฅ ๋ฐ์ดํฐ ํ๋ฆ ๊ฐ๋๋ค.)ํ๋กํผํฐ๋ ์์ ํ ์ ์๋ค๋ ํน์ง์ด ์๋ค.(์์์ ์ฅ์์ ์ฝ๊ธฐ ์ ์ฉ์ธ ๋ฐ์ดํฐ์ด๋ค.)์ฌ์ฉ๋ฐฉ๋ฒ?ํ๋กํผํฐ
https://ko.reactjs.org/docs/components-and-props.html๋ฆฌ์กํธ์์ ์ ์ํ๋ ์ปดํฌ๋ํธ ์ข ๋ฅ๋ ํฌ๊ฒ ํจ์ํ ์ปดํฌ๋ํธ, ํด๋์คํ ์ปดํฌ๋ํธ 2๊ฐ์ง๊ฐ ์๋ค.1) ํจ์ํ ์ปดํฌ๋ํธ (Stateless Functional Compone