Defined in: packages/query-core/src/queriesObserver.ts:61
A QueriesObserver watches an array of queries at once, exposing them as a single array of QueryObserverResults (or, when a combine option is given, as a combined value derived from that array). It manages one internal QueryObserver per query, and is the primitive that framework adapters (e.g. useQueries) build their hooks on top of.
const observer = new QueriesObserver(queryClient, [
{ queryKey: ['post', 1], queryFn: fetchPost },
{ queryKey: ['post', 2], queryFn: fetchPost },
])
const unsubscribe = observer.subscribe((result) => {
console.log(result)
})TCombinedResult = QueryObserverResult[]
new QueriesObserver<TCombinedResult>(
client: QueryClient,
queries: QueryObserverOptions<any, any, any, any, any, never>[],
options?: QueriesObserverOptions<TCombinedResult>): QueriesObserver<TCombinedResult>;Defined in: packages/query-core/src/queriesObserver.ts:75
QueryObserverOptions<any, any, any, any, any, never>[]
QueriesObserverOptions<TCombinedResult>
QueriesObserver<TCombinedResult>
Subscribable<QueriesObserverListener>.constructordestroy(): void;Defined in: packages/query-core/src/queriesObserver.ts:111
Stops observing all queries: clears all listeners and destroys every underlying QueryObserver this observer manages.
void
getCurrentResult(): QueryObserverResult[];Defined in: packages/query-core/src/queriesObserver.ts:216
Returns the most recently computed array of QueryObserverResults, one per observed query, in the same order as the queries passed to the constructor or setQueries.
The current results.
const results = observer.getCurrentResult()
const data = results.map((result) => result.data)getObservers(): QueryObserver<unknown, Error, unknown, unknown, readonly unknown[]>[];Defined in: packages/query-core/src/queriesObserver.ts:235
Returns the underlying QueryObserver instances this observer manages, in the same order as the queries passed to the constructor or setQueries.
QueryObserver<unknown, Error, unknown, unknown, readonly unknown[]>[]
The managed query observers.
getOptimisticResult(queries: QueryObserverOptions<unknown, Error, unknown, unknown, readonly unknown[], never>[], combine: CombineFn<TCombinedResult> | undefined): [QueryObserverResult[], (r?: QueryObserverResult[]) => TCombinedResult, () => QueryObserverResult[]];Defined in: packages/query-core/src/queriesObserver.ts:250
The QueriesObserver counterpart of QueryObserver#getOptimisticResult — computes the result for the given (already-defaulted) queries right now, synchronously. Called by framework adapters (e.g. useQueries) ahead of subscribing, returning a tuple of the raw per-query results, a function to compute the combined result from them, and a function to wrap the results for property-access tracking.
QueryObserverOptions<unknown, Error, unknown, unknown, readonly unknown[], never>[]
The defaulted options of the queries to compute the result for.
The combine function used by the returned combineResult, if any.
CombineFn<TCombinedResult> | undefined
[QueryObserverResult[], (r?: QueryObserverResult[]) => TCombinedResult, () => QueryObserverResult[]]
A tuple of the per-query results, a function that computes the combined result, and a function that returns the results wrapped for property-access tracking.
getQueries(): Query<unknown, Error, unknown, readonly unknown[]>[];Defined in: packages/query-core/src/queriesObserver.ts:225
Returns the underlying Query instances currently being observed, in the same order as the queries passed to the constructor or setQueries.
Query<unknown, Error, unknown, readonly unknown[]>[]
The observed queries.
hasListeners(): boolean;Defined in: packages/query-core/src/subscribable.ts:43
Returns true while at least one listener is registered, false once they have all unsubscribed.
boolean
true if at least one listener is registered.
Subscribable.hasListenerssetQueries(queries: QueryObserverOptions<unknown, Error, unknown, unknown, readonly unknown[], never>[], options?: QueriesObserverOptions<TCombinedResult>): void;Defined in: packages/query-core/src/queriesObserver.ts:133
Replaces the set of queries being observed. Existing QueryObservers are reused for queries that match an already-observed query hash; observers for queries that are no longer present are destroyed, and new observers are created and subscribed to for newly added queries.
QueryObserverOptions<unknown, Error, unknown, unknown, readonly unknown[], never>[]
The options of the queries to observe.
QueriesObserverOptions<TCombinedResult>
Replaces the observer's options, e.g. its combine function.
void
observer.setQueries([
{ queryKey: ['post', 1], queryFn: fetchPost },
{ queryKey: ['post', 3], queryFn: fetchPost },
])subscribe(listener: QueriesObserverListener): () => void;Defined in: packages/query-core/src/subscribable.ts:28
Registers a listener to be called on every update this object notifies about. Returns a function that removes the listener again — call it to stop listening. The base class never drops a listener on its own, though some subclasses clear all of theirs in destroy().
QueriesObserverListener
Called on each update, with whatever the subclass passes to its subscribers.
A function that removes the listener.
(): void;void
const unsubscribe = subscribable.subscribe(() => {
// react to the update
})
unsubscribe()Subscribable.subscribe