Context API
Last updated
Last updated
๋ฆฌ์กํธ์์์ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ถ๋ชจ ์ปดํฌ๋ํธ์์ ์์ ์ปดํฌ๋ํธ๋ก props๋ฅผ ํตํด ์ ๋ฌํ๋ค.
๋ฆฌ์กํธ ์ฑ์์ ์๋ง์ ์ปดํฌ๋ํธ๋ก ์ธํ ๋ณต์กํ ํธ๋ฆฌ ๊ตฌ์กฐ๊ฐ ๋ง๋ค์ด์ง๊ณ , ๊ฐ ์ปดํฌ๋ํธ์์ ๊ณตํต๋ ๋ฐ์ดํฐ๋ฅผ ํ์๋ก ํ์ฌ ์ ๋ฌ ํด์ผํ๋ ์ํฉ์ด ๋ฐ์ํ๋ฉด ๋จ์ํ ๋ฐ์ดํฐ ์ ๋ฌ๋ง์ ์ํํ๋ ์ปดํฌ๋ํธ๋ก ์ธํ props drilling์ด ๋ฐ์ํ ์ ์๋ค.
props drilling์ ๋ณ๊ฒฝ์ฌํญ์ด ๋ฐ์ํ์ ๋ ์ปดํฌ๋ํธ๋ฅผ ์ผ์ผ์ด ์ฐพ์์ ์์ ํด์ผ ํ๋ฏ๋ก ์ ์ง๋ณด์์ฑ์ด ๋จ์ด์ง๋ค.
Context API๋ฅผ ํตํด ํด๋น Context๋ฅผ ๊ตฌ๋ ํ๋(useContext๋ฅผ ์ฌ์ฉํ๋) ๋ชจ๋ ์ปดํฌ๋ํธ์ ๊ณตํต ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ก ์ ๋ฌํ ์ ์๋ค.
Context๋ฅผ ์ฌ์ฉํ๋ฉด ์ปดํฌ๋ํธ์ ์ฌ์ฌ์ฉ์ด ์ด๋ ค์์ง๋ค.
์ปดํฌ๋ํธ๊ฐ Context์ ๋ํ ์์กด์ฑ์ด ๋ฐ์ํด Provider ์ธ๋ถ์์ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
Props Drilling์ ํผํ๊ธฐ ์ํ ๋ชฉ์ ์ด๋ผ๋ฉด ์ปดํฌ๋ํธ ํฉ์ฑ์ ๋จผ์ ๊ณ ๋ คํ๋ค.
์ปดํฌ๋ํธ ํฉ์ฑ ์ฌ๋ฌ ๊ฐ์ ์์ ์ปดํฌ๋ํธ๋ฅผ ์กฐํฉํ์ฌ ํ๋์ ํฐ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ด๋ค. ์ด๋ฅผ ํตํด ํน์ ๊ธฐ๋ฅ์ ์ํํ๋ ์์ฑ๋ UI๋ฅผ ๋ง๋๋ ๊ฒ ์ด UI๋ฅผ ๊ตฌ์ฑํ๋ ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ก ํ์๋ก ํ๋ State(Lifting State Up)๋ฅผ ๊ด๋ฆฌํ๋ค.