matchQuery
TypeScript
1function matchQuery(filters: QueryFilters, query: Query<any, any, any, any>): boolean;定义于:packages/query-core/src/utils.ts:205
检查一个查询是否匹配给定的 QueryFilters。所有已指定的过滤器都必须匹配;未指定的过滤器将被忽略。
参数
filters
用于检查查询的过滤器。
filters 属性
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
exact? |
boolean |
undefined |
精确匹配查询键 |
fetchStatus? |
"fetching" | "paused" | "idle" |
undefined |
包含匹配其 fetchStatus 的查询 |
predicate? |
(query: Query) => boolean |
undefined |
包含匹配该谓词函数的查询 |
queryKey? |
TQueryKey | TuplePrefixes<TQueryKey> |
undefined |
包含匹配该查询键的查询 |
stale? |
boolean |
undefined |
包含或排除过期查询 |
type? |
QueryTypeFilter |
'all' |
过滤活跃查询、非活跃查询或全部查询 |
query
Query<any, any, any, any>
待检查的查询。
返回值
boolean
若查询匹配所有已指定的过滤器,则返回 true。
示例
TypeScript
1const queryCache = queryClient.getQueryCache()2 3const matchingQueries = queryCache4 .getAll()5 .filter((query) => matchQuery({ queryKey: ['posts'] }, query))