queryOptions

函数:queryOptions()

允许以类型安全的方式共享和重用查询选项。

queryKey 将会被标记为来自 queryFn 的类型。

示例

ts
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined

参数

要标记来自 queryFn 类型的查询选项。

queryOptions(options)

ts
function queryOptions<TQueryFnData, TError, TData, TQueryKey>(
  options,
): UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object
function queryOptions<TQueryFnData, TError, TData, TQueryKey>(
  options,
): UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object

允许以类型安全的方式共享和重用查询选项。

queryKey 将会被标记为来自 queryFn 的类型。

示例

ts
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined

类型参数

TQueryFnData = unknown

TError = Error

TData = TQueryFnData

TQueryKey extends QueryKey = QueryKey

参数

options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>

要标记来自 queryFn 类型的查询选项。

返回值

UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object

标记的查询选项。

标记的查询选项。

参数

要标记来自 queryFn 类型的查询选项。

定义于

query-options.ts:52

queryOptions(options)

ts
function queryOptions<TQueryFnData, TError, TData, TQueryKey>(
  options,
): DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object
function queryOptions<TQueryFnData, TError, TData, TQueryKey>(
  options,
): DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object

允许以类型安全的方式共享和重用查询选项。

queryKey 将会被标记为来自 queryFn 的类型。

示例

ts
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined
const { queryKey } = queryOptions({
  queryKey: ['key'],
  queryFn: () => Promise.resolve(5),
  //  ^?  Promise<number>
})

const queryClient = new QueryClient()
const data = queryClient.getQueryData(queryKey)
//    ^?  number | undefined

类型参数

TQueryFnData = unknown

TError = Error

TData = TQueryFnData

TQueryKey extends QueryKey = QueryKey

参数

options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>

要标记来自 queryFn 类型的查询选项。

返回值

DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey> & object

标记的查询选项。

标记的查询选项。

参数

要标记来自 queryFn 类型的查询选项。

定义于

query-options.ts:85