Skip to content

Commit 4e360c8

Browse files
authored
Merge pull request #15 from nejcrogelsek/feature/14-dynamic-parallel-queries
useQueries - dynamic parallel queries
2 parents da734f6 + f97d951 commit 4e360c8

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import axios from 'axios'
2+
import { FC } from 'react'
3+
import { useQueries } from 'react-query'
4+
5+
interface Props {
6+
heroIds: number[]
7+
}
8+
9+
const fetchSuperHero = (id: number) => {
10+
return axios.get(`http://localhost:4000/superheroes/${id}`)
11+
}
12+
13+
const DynamicParallelQueries: FC<Props> = ({ heroIds }: Props) => {
14+
const queryResults = useQueries(
15+
heroIds.map((id) => ({
16+
queryKey: ['superhero', id],
17+
queryFn: () => fetchSuperHero(id),
18+
})),
19+
)
20+
21+
console.log(queryResults)
22+
return (
23+
<div className="dynamic-parallel-queries">
24+
<h1>DynamicParallelQueries</h1>
25+
</div>
26+
)
27+
}
28+
29+
export default DynamicParallelQueries

src/routes/Routes.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import SuperHeroes from 'pages/SuperHeroes/SuperHeroes'
77
import RQSuperHeroes from 'pages/RQSuperHeroes/RQSuperHeroes'
88
import RQSuperHero from 'pages/RQSuperHero/RQSuperHero'
99
import ParallelQueries from 'pages/ParallelQueries/ParallelQueries'
10+
import DynamicParallelQueries from 'pages/DynamicParallelQueries/DynamicParallelQueries'
1011

1112
export enum RouteType {
1213
PUBLIC,
@@ -45,6 +46,11 @@ export const AppRoutes: AppRoute[] = [
4546
path: '/parallel-queries',
4647
children: <ParallelQueries />,
4748
},
49+
{
50+
type: RouteType.PUBLIC,
51+
path: '/dynamic-parallel-queries',
52+
children: <DynamicParallelQueries heroIds={[1, 3]} />,
53+
},
4854
]
4955

5056
const Routes: FC = () => {

0 commit comments

Comments
 (0)