<aside> ๐
</aside>
queryKey๋ก ๋ฐ์์จ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค. ๋ง์ฝ queryKey์ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ฉด ์๋ฒ๋ก๋ถํฐ ๋ฐ์์ค๊ณ , ์๋ค๋ฉด ์บ์ฑ๋ ๋ฐ์ดํฐ, ์ฆ queryKey์ ์ผ์นํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ค.
import { useQuery } from '@tanstack/react-query'
export default function MyComponent() {
const { data } = useQuery({
queryKey: ['delay'],
quertFun: async () => (await fetch('<https://api>')).json()
})
return <div>{JSON.stringify(data)}</div>
}
์๋์ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด ๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋ค.
Query Cache์ ์บ์๋ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ(=queryKey์ ์ผ์นํ๋ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ)์๋ ์๋ฒ์ ์์ฒญํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์๋ก ๊ฐ๊ณ ์จ๋ค. ์ด๋ ๊ฒ ์๋ก ๊ฐ๊ณ ์จ ๋ฐ์ดํฐ๋ ์บ์๋๊ณ , ๊ทธ ๋ค์ ์์ฒญ๋ถํฐ๋ ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ์ ์๋ค.

์ถ์ฒ: https://www.heropy.dev/p/HZaKIE
๋ฐ๋๋ก Query Cache์ ์บ์๋ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ด์ง ์๊ณ , ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณ ์์ ์ฌ์ฉํ๊ฒ ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ์์ฒญ์ด ์ฌ๋ฌ ๋ฒ ๋ฐ์ํด๋, ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ค๋ณต ์์ฒญ์ ์ค์ผ ์ ์๋ค.

์ถ์ฒ: https://www.heropy.dev/p/HZaKIE
๊ทธ๋ ๋ค๋ฉด ๋ฐ์ดํฐ๊ฐ ํ ๋ฒ ์บ์๋๋ฉด ์๋ฒ๋ก ๋ ์ด์ ์์ฒญ์ ๋ณด๋ผ ์ ์์๊น?