โ์ํ ๊ด๋ฆฌ ๋๊ตฌ๊ฐ ์ ํ์ํ ๊น?
์ํ๋(State)?
- React์์ State๋ component ์์์ ๊ด๋ฆฌ๋๋ ๊ฒ์ด๋ค.
- state๋ ์ค๋ก์ง ์์ ์ปดํฌ๋ํธ์๊ฒ๋ง ์ ๋ฌํด์ค ์ ์๋ค.
์ํ๊ด๋ฆฌ ํ์์ฑ
1. ์์ ์ปดํฌ๋ํธ๋ค ๊ฐ์ ๋ค์ด๋ ํธ ๋ฐ์ดํฐ ์ ๋ฌ์ ๋ถ๊ฐ๋ฅ ํ๋ค.
2. ์์ ์ปดํฌ๋ํธ๋ค ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋๋ ์ํ๋ฅผ ๊ด๋ฆฌํ๋ ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ฅผ ํตํด์ ์ฃผ๊ณ ๋ฐ๋๋ค.
3. ๊ทธ๋ฐ๋ฐ ์์์ด ๋ง์์ง๋ค๋ฉด ์ํ ๊ด๋ฆฌ๊ฐ ๋งค์ฐ ๋ณต์กํด์ง๋ฉฐ ์์์ด ๋ง์์ง ์๋ก ๋ฐ์ดํฐ์ด๋์ด ๋ง์์ ธ ์ฝ๋๊ฐ ๋ณต์กํด์ง๋ค.
- ๋ง์ฝ ์๊ทธ๋ฆผ ์ฒ๋ผ ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ก๋ถํฐ ์ํ๋ฅผ ์ ๋ฌ๋ฐ์์ผํ๋ ComponentD๊ฐ ์๋ค๋ฉด ๊ทธ ์ฌ์ด์ ์ปดํฌ๋ํธ์ ํด๋น ์ํ๋ฅผ ์ ๋ฌํด์ ๋์ฐฉ์ง์ธ ComponentD์ ์ํ๋ฅผ ์ ๋ฌํด์ฃผ์ด์ผ ํ๋ค.
์ฌ์ง์ด ๊ทธ ์ฌ์ด์ ComponentB๋ ํด๋น ์ํ๊ฐ ํ์์์์๋ ๋ณธ์ธ์ ์์์ธ ComponentD์ ์ํ๋ฅผ ๋๊ฒจ์ฃผ๊ธฐ ์ํด ์ํ๋ฅผ ์ ๋ฌ๋ฐ๊ณ ์ ๋ฌํด์ฃผ๋ ๊ณผ์ ์ ์ถ๊ฐํด์ผํ๋ ๊ฒ์ด๋ค => Props drilling ์ด์
์์ ๊ฐ์ ์์ ์ํ๊ฐ์๋ ComponentA ์ ComponentD ์ฌ์ด์ ๋๋ง์ ์ปดํฌ๋ํธ๊ฐ ์๋ค๋ฉด ๊ทธ ์ฌ์ด ์ปดํฌ๋ํธ๋ ๊ณ์ํด์ ๋ณธ์ธ์๊ฒ ํ์์๋ ์ํ๋ฅผ ๋ค์ ์์ ์ปดํฌ๋ํธ์ ์ ๋ฌํด์ฃผ๋ ์ญํ ์ ํด์ผ ํ ๊ฒ์ด๋ค.
๐ช์ํ ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
๐๐ป ๋ฌธ์ ํด๊ฒฐ
1. ์ ์ญ ์ํ ์ ์ฅ์ ์ ๊ณต
2. Props drilling ์ด์ ํด๊ฒฐ
- ์ํ ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํ๋ฉด ์์ ์์์์ ์ฒ๋ผ ๋ถ๋ชจ๋ก๋ถํฐ ์์์ผ๋ก ์ํ๋ฅผ ๋ด๋ ค๋ฐ๋๊ฒ์ด ์๋ ๋ชจ๋ ์ปดํฌ๋ํธ์ ์ํ๋ฅผ ์ ๋ฌํด์ฃผ์ง ์๊ณ ๋ ์ด๋ค ์ปดํฌ๋ํธ์์๋ ๋ฐ๋ก ์ ์ญ ์ํ์ธ state์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๊ฒ ๋๋ค.
๐๐ป ์ํ ๊ด๋ฆฌ ํด ์ข ๋ฅ
- React Context
- Redux
- MobX
728x90
'๐Library > โ Redux' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Redux(๋ฆฌ๋์ค)๋? (0) | 2022.12.08 |
---|