API Documentation / @pinia/colada / UseQueryOptions
Interface: UseQueryOptions<TData, TError, TDataInitial> 
Options for useQuery(). Can be extended by plugins.
Example 
// use-query-plugin.d.ts
export {} // needed
declare module '@pinia/colada' {
  interface UseQueryOptions {
    // Whether to refresh the data when the component is mounted.
    refreshOnMount?: boolean
  }
}Extends 
Pick<UseQueryOptionsGlobal, |"gcTime"|"enabled"|"refetchOnMount"|"refetchOnReconnect"|"refetchOnWindowFocus"|"staleTime">.PiniaColadaAutoRefetchOptions<TData,TError,TDataInitial>.PiniaColadaDelayOptions
Type Parameters 
TData 
TData = unknown
TError 
TError = ErrorDefault
TDataInitial 
TDataInitial extends TData | undefined = undefined
Properties 
autoRefetch? 
optional autoRefetch: number | boolean | <T>(state) => number | boolean;Whether to enable auto refresh by default.
Default 
falseInherited from 
PiniaColadaAutoRefetchOptions.autoRefetch
delay? 
optional delay: number | false;Delay in milliseconds to wait before letting the asyncStatus become 'loading'. Set to false or 0 to disable. Requires the PiniaColadaDelay plugin.
Default 
200enabled? 
optional enabled: MaybeRefOrGetter<boolean>;Whether the query should be enabled or not. If false, the query will not be executed until refetch() or refresh() is called. If it becomes true, the query will be refreshed.
Inherited from 
Pick.enabledgcTime? 
optional gcTime: number | false;Time in ms after which, once the data is no longer being used, it will be garbage collected to free resources. Set to false to disable garbage collection.
Default 
300_000 (5 minutes)Inherited from 
Pick.gcTimeinitialData()? 
optional initialData: () => TDataInitial;The data which is initially set to the query while the query is loading for the first time. Note: unlike with placeholderData, setting the initial data changes the state of the query (it will be set to success).
Returns 
TDataInitial
See 
key 
key: MaybeRefOrGetter<EntryKey>;The key used to identify the query. Array of primitives without reactive values or a reactive array or getter. It should be treaded as an array of dependencies of your queries, e.g. if you use the route.params.id property, it should also be part of the key:
import { useRoute } from 'vue-router'
import { useQuery } from '@pinia/colada'
const route = useRoute()
const { data } = useQuery({
  // pass a getter function (or computed, ref, etc.) to ensure reactivity
  key: () => ['user', route.params.id],
  query: () => fetchUser(route.params.id),
})placeholderData? 
optional placeholderData: 
  | NoInfer<TDataInitial>
  | NoInfer<TData>
| <T>(previousData) => undefined | NoInfer<TDataInitial> | NoInfer<TData>;A placeholder data that is initially shown while the query is loading for the first time. This will also show the status as success until the query finishes loading (no matter the outcome of the query). Note: unlike with initialData, the placeholder does not change the cache state.
See 
query() 
query: (context) => Promise<TData>;The function that will be called to fetch the data. It must be async.
Parameters 
context 
UseQueryFnContext
Returns 
Promise<TData>
refetchOnMount? 
optional refetchOnMount: MaybeRefOrGetter<RefetchOnControl>;Whether to refetch the query when the component is mounted.
Default 
trueInherited from 
Pick.refetchOnMountrefetchOnReconnect? 
optional refetchOnReconnect: MaybeRefOrGetter<RefetchOnControl>;Whether to refetch the query when the network reconnects.
Default 
trueInherited from 
Pick.refetchOnReconnectrefetchOnWindowFocus? 
optional refetchOnWindowFocus: MaybeRefOrGetter<RefetchOnControl>;Whether to refetch the query when the window regains focus.
Default 
trueInherited from 
Pick.refetchOnWindowFocusretry? 
optional retry: 
  | number
  | RetryOptions
  | (failureCount, error) => boolean;Options for the retries of this query added by @pinia/colada-plugin-retry.
staleTime? 
optional staleTime: number;Time in ms after which the data is considered stale and will be refreshed on next read.
Default 
5000 (5 seconds)Inherited from 
Pick.staleTime