Apollo Client 中的 active queries(活动查询)指的是当前正在运行的查询,这些查询已经发送到服务器,并且正在等待响应。如需查看当前 active queries,可以使用 Apollo Client 提供的 watchQuery API。
以下是一个使用 watchQuery 检查 active queries 的示例:
import { gql } from '@apollo/client';
import { useQuery } from '@apollo/client';
const GET_BOOKS = gql`
query GetBooks {
books {
title
author
}
}
`;
function BooksList() {
const { loading, data, startPolling, stopPolling } = useQuery(GET_BOOKS, {
pollInterval: 5000, // 每 5 秒自动轮询一次
});
console.log(`当前是否有活动查询:${loading}`); // 打印当前是否有活动查询
// 其他代码...
}
在上面的示例中,通过使用 useQuery hook 并设置 pollInterval 属性,可以轮询获取'书籍”查询。通过检查 loading 变量的值,可以检查当前是否有活动查询。如果 loading 为 true,则说明当前有活动查询,否则没有。
注意:在不需要轮询查询的情况下最好避免使用 startPolling 和 stopPolling 函数,以减少不必要的网络请求和服务器负载。
上一篇:ApolloClientcreateHttpLinktypescripterror2739
下一篇:ApolloClient的GraphQLUnitTesting返回错误:TypeError:(0,_reactHooks.useQuery)isnotafunction