ํ๋ก ํธ์๋ ์ํ๊ด๋ฆฌ ์ค์ ํธ with React Query & Zustand ์ฐ์์ฝ2023
๊ธฐ์กด ์กฐ์ง์์ ํ๋ก ํธ์๋ ์ํ ๊ด๋ฆฌ๋ฅผ TanStack Query(FKA React Query) ๊ทธ๋ฆฌ๊ณ Zustand๋ฅผ ๋์ ํด ํ์ค์ผ๋ก ์ฌ์ฉํ๊ณ ์์๋ค. ์ด๊ฒ์ ๋์ ํ๋๋ฐ ๊ฑฐ์ ์์ก๋ ผ์๊ธ ํ์๊ณต๋ก ์ด ์์๋ ๊ฒ์ผ๋ก ๊ธฐ์ต์ด ๋๋ค. ๊ฒฐ๊ณผ๋ก ์ ์ผ๋ก ๋๋ฌด ๋ง์กฑํ๋ฉด์ ์ฐ๊ณ ์๋ค. ๊ทธ๋ฐ๋ฐ, ์ต๊ทผ ๋ํฅ์ด ์ด๋ ๊ฒ ๋ ๊ธฐ์ ์ด Client State ๊ด๋ฆฌ ํ๋๋ฐ ๊ตญ๋ฃฐ์ฒ๋ผ ์ฐ์ด๊ณ ์๋๊ฒ์ ํ์ธํ๊ณ , ๋ฆฌ๋ง์ธ๋๊ฐ ํ์ํ๋ค๊ณ ๋๊ผ๋ค. ํ์ต ์๋ฃ๋ฅผ ์ฐพ๋ ์ค ์ฐ์ฐํ, ์ฐ์์ฝ 2023์์ ๋ฐํํ ๋ด์ฉ์ ํ์ธํ ์ ์์๋ค.
ํ ์ค์์ React-Query๋ฅผ ์ฃผ์ ์คํ์ผ๋ก ์ฌ์ฉํ๊ธธ๋ ๊ฐ์ธ ํ๋ก์ ํธ์์ ๋์ ์ ํด๋ดค์๋ค. ๊ฒฐ๊ณผ๋ ๋๋ง์กฑ, Key๋ฅผ ํตํด ๋ณํ๋ ๊ฐ๋ง ์กฐํํ ์ ์๊ณ , API ์ํ๋ฅผ Statusํํ๋ก ๊ด๋ฆฌํ๊ณ , Success, Error, ๊ทธ๋ฆฌ๊ณ ์บ์ฑ๊น์ง, axios๋ฅผ ์ฌ์ฉํ ๋ ์ผ์ผ์ด ๋ง๋ค์ด์ผ ํ๋ ๋ถ์์ ํ ๋ชจ๋๋ค์ ์ผ๊ด์ ์ผ๋ก ์ ๊ณตํ๋ ๊ฒ์ด์๋ค. ์ด๊ฒ์ ๋์ ์ ์ํ ์ด์ ๊ฐ ์์๋ค.
TanStack Query๊ฐ ๋ง๋ฅ์ ์๋๋ค, ์ ์ญ ์ํ ๊ด๋ฆฌ๋ ํ์ํ๋ค. ํ์ฐฝ, Recoil์ด ํ์ด์ค๋ถ์์ ๊ฐ๋ฐํ๊ณ Atom์ด๋ผ๋ ๊ฐ๋ ์ด ํฅ๋ฏธ๋ก์ ๋ค. ํ์ง๋ง, v1.0์ด ์ค๋ ๊ธฐ๊ฐ๋์ ๋์ค์ง ์๋๊ฒ์ด ๋ถ์ ํฌ์ธํธ์์ผ๋ฉฐ, ๋น ๋ฅธ ๋์ ์ ์ํด Redux ๊ธฐ๋ฐ์ ์ต์ํ Zustand๋ฅผ ๋์ ํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.