experimental_streamedQuery
TypeScript
1function experimental_streamedQuery<TQueryFnData = unknown, TData = TQueryFnData[], TQueryKey extends readonly unknown[] = readonly unknown[]>(options: StreamedQueryParams<TQueryFnData, TData, TQueryKey>): (context: object) => TData | Promise<TData>;定义于:packages/query-core/src/streamedQuery.ts:70
这是一个辅助函数,用于创建一个从 AsyncIterable 流式传输数据的查询函数。
数据将是一个包含所有已接收数据块的数组。
该查询在收到第一个数据块之前处于“等待中(pending)”状态,之后则转为“成功(success)”状态。
该查询的 fetchStatus 将一直保持为“拉取中(fetching)”,直到流结束。
类型参数
TQueryFnData
TQueryFnData = unknown
TData
TData = TQueryFnData[]
TQueryKey
TQueryKey extends readonly unknown[] = readonly unknown[]
参数
options
StreamedQueryParams<TQueryFnData, TData, TQueryKey>
一个 streamFn,它返回一个用于流式传输数据的 AsyncIterable,以及可选的 refetchMode、reducer 和 initialValue 选项。
返回值
一个可作为 queryFn 传入的查询函数。
(context: object) => TData | Promise<TData>
示例
TypeScript
1await queryClient.query({2 queryKey: ['data'],3 queryFn: streamedQuery({4 streamFn: fetchDataInChunks,5 }),6})