useIsFetching
TypeScript
1function useIsFetching(2 host: ReactiveControllerHost,3 filters?: Accessor<Omit<QueryFilters<readonly unknown[]>, "fetchStatus">>,4 queryClient?: QueryClient5): IsFetchingAccessor;定义于:packages/lit-query/src/useIsFetching.ts:141
创建一个 Lit 响应式控制器,用于跟踪当前正在拉取的、匹配条件的查询数量。
当 filters 是一个函数时,它会在宿主(host)更新期间被重新读取,以便计数能响应宿主的响应式状态变化。若省略 queryClient,该控制器将从最近连接的 QueryClientProvider 中解析出查询客户端。
参数
host
ReactiveControllerHost
拥有缓存订阅的 Lit 响应式控制器宿主。
filters?
Accessor<Omit<QueryFilters<readonly unknown[]>, "fetchStatus">> = {}
查询过滤器,或一个返回查询过滤器的 getter 函数。
filters 的属性
基于 QueryFilters 构建。参见上方类型定义,了解其影响范围。
queryClient?
可选的显式查询客户端。对于不应从 Lit 上下文中解析查询客户端的控制器,请提供此参数。
返回值
一个访问器,用于获取当前匹配的、处于拉取状态的查询数量。
示例
TypeScript
1import { LitElement, html } from 'lit'2import { useIsFetching } from '@tanstack/lit-query'3 4class TodosStatus extends LitElement {5 private readonly todosFetching = useIsFetching(this, {6 queryKey: ['todos'],7 })8 9 render() {10 return html`<span>${this.todosFetching()} active todo fetches</span>`11 }12}