본문으로 건너뛰기

병렬 쿼리

export class AppComponent {
// The following queries will execute in parallel
usersQuery = injectQuery(() => ({ queryKey: ['users'], queryFn: fetchUsers }))
teamsQuery = injectQuery(() => ({ queryKey: ['teams'], queryFn: fetchTeams }))
projectsQuery = injectQuery(() => ({
queryKey: ['projects'],
queryFn: fetchProjects,
}))
}

TanStack Query는 injectQueries를 제공하며, 이를 사용하여 원하는 수만큼의 쿼리를 병렬로 동적 실행할 수 있습니다.

export class AppComponent {
users = signal<Array<User>>([])

// Please note injectQueries is under development and this code does not work yet
userQueries = injectQueries(() => ({
queries: users().map((user) => {
return {
queryKey: ['user', user.id],
queryFn: () => fetchUserById(user.id),
}
}),
}))
}