1
1
import { useEffect } from "react" ;
2
2
import { useQuery , useQueryClient } from "@tanstack/react-query" ;
3
- import { axios } from "@api/axios " ;
3
+ import { getIssues } from "@api/issues " ;
4
4
import type { Page } from "@typings/page.types" ;
5
5
import type { Issue } from "@features/issues" ;
6
6
@@ -13,18 +13,10 @@ export function getQueryKey(page?: number) {
13
13
return [ QUERY_KEY , page ] ;
14
14
}
15
15
16
- async function getIssues ( page : number , options ?: { signal ?: AbortSignal } ) {
17
- const { data } = await axios . get ( "/issue" , {
18
- params : { page, status : "open" } ,
19
- signal : options ?. signal ,
20
- } ) ;
21
- return data ;
22
- }
23
-
24
16
export function useGetIssues ( page : number ) {
25
17
const query = useQuery < Page < Issue > , Error > (
26
18
getQueryKey ( page ) ,
27
- ( { signal } ) => getIssues ( page , { signal } ) ,
19
+ ( { signal } ) => getIssues ( page , { status : "open" } , { signal } ) ,
28
20
{ keepPreviousData : true }
29
21
) ;
30
22
@@ -33,7 +25,7 @@ export function useGetIssues(page: number) {
33
25
useEffect ( ( ) => {
34
26
if ( query . data ?. meta . hasNextPage ) {
35
27
queryClient . prefetchQuery ( getQueryKey ( page + 1 ) , ( { signal } ) =>
36
- getIssues ( page + 1 , { signal } )
28
+ getIssues ( page + 1 , { status : "open" } , { signal } )
37
29
) ;
38
30
}
39
31
} , [ query . data , page , queryClient ] ) ;
0 commit comments