React Query를 써보자

React-Query를 왜 쓸까?

그럼 본격적으로 사용해보자

  1. 우선 설치가 필요하다
npm install react-query
  1. 그다음 index.js에 세팅이 필요하다.
//index.js
import { QueryClient, QueryClientProvider } from 'react-query';

//QueryClient 상수를 만들고
const queryClient = new QueryClient()

//App.js를 감싸면된다.
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
  <React.StrictMode>
    <QueryClientProvider client={queryClient}>
      <Provider store={store}>
        <BrowserRouter>
          <App />
        </BrowserRouter>
      </Provider >
    </QueryClientProvider>
  </React.StrictMode>
);
  1. 그다음 본문에서 사용하면 된다.
// 일반적으로 데이터를 가져올때,
axios.get('https://codingapple1.github.io/userdata.json').then((a))->{
   a.data
}) 
// 와 같이 가져오지만 react-query를 이용한다면 use Query를 사용해야한다.
let result = useQuery('작명', () =>{
	return axios.get('https://codingapple1.github.io/userdata.json').then((a) => {
  		return a.data
	})
})

참고

예제. 네비바 프로필 글씨를 불러와보자

<Nav className='ms-auto'>
{result.isLoading ?'로딩중' : result.data.name}
</Nav>

// 다양한 케이스를 처리하려면 다음과 작성하면 좀더 깔끔하게 작성할 수 있다.
{ result.isLoading && '로딩중'}
{ result.error && '에러남'} // 이러면 로딩뿐 만아니라 에러 처리도 가능하다
{ reulst.data && result.data.name }