useQueries_ReactQuery

miin·2023년 11월 2일
0

React

목록 보기
47/52
post-thumbnail

useQuery를 여러개 실행할 때 사용

 // result: [{1번 쿼리 결과}, {2번 쿼리 결과}]
const result = useQueries({
    queries: [
      {
        queryKey: ['mypageUser'],
        queryFn: () => getUserData(),
        refetchOnWindowFocus: false,
        onError: (err: unknown) => {
          console.log('mypageUser2', { err })
        },
      },
      {
        queryKey: ['mypageUserList'],
        queryFn: () => getUserListData(),
        refetchOnWindowFocus: false,
        onError: (err: unknown) => {
          console.log('mypageUserList', { err })
        },
      },
    ],
  })

  const getUserData = async () => {
    const {
      data: { data },
    } = await AxiosApi.get('/user-info')
    // console.log('user', { data })
    setCompany(data.company)
    setUser(data)
    return data
  }
  
    useEffect(() => {
// [{rune 정보, data: [], isSucces: true ...}, {spell 정보, data: [], isSucces: true ...}]
    const loadingFinishAll = result.some((result) => result.isLoading)
// loadingFinishAll이 false이면 최종 완료
    },[result])

0개의 댓글