reactjs - 当尝试调用 Apollo Client Query 时,我总是加载 : true, networkStatus: true

标签 reactjs react-apollo apollo-client

查询:

HOUSEDETAIL : gql`
query houseDetail($_id:ID){
 houseDetail(_id:$_id) {
   address
   address1
   street
   phoneNumber
   houseNo
 }
}
`,

尝试调用apolloClient时React中的代码:

    const Page2 = compose(graphql(query.HOUSEDETAIL,{name:'houseDetail', options: (props) => ({variables: {_id:props.houseAddress._id,fetchPolicy: 'network-only'}})})) (Dashboard) 

浏览器控制台中的错误如下所示:

        props{"houseAddress":{},"houseDetail":{"variables":{"fetchPolicy":"network-only"},"loading":true,"networkStatus":1}}

最佳答案

这似乎是一个常见问题,通常通过添加 notifyOnNetworkStatusChange: true

来解决

在您的具体场景中:

const Page2 = compose(
  graphql(
    query.HOUSEDETAIL,
    {
       name:'houseDetail', 
       options: (props) => ({
         variables: { 
           _id:props.houseAddress._id
         }, // ====> this bracket was also misplaced on your example code
         fetchPolicy: 'network-only',
         notifyOnNetworkStatusChange: true
       })
    }
  )
)(Dashboard) 

有关 notifyOnNetworkStatusChange 的更多信息可以在 ReactApollo docs 中找到。 :

关于reactjs - 当尝试调用 Apollo Client Query 时,我总是加载 : true, networkStatus: true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49443434/

相关文章:

javascript - React + Express.js 服务器应该始终返回相同的 index.html 文件,无论 url 路由是什么

reactjs - React Hook Form 错误 - 类型 'UseFormRegister<FormData>' 不可分配给类型 'LegacyRef<HTMLInputElement> | undefined'

javascript - 接收错误 - 实现 React Spring 基本示例时,只能在函数组件的主体内部调用 Hook

graphql - Apollo GraphQL (React) 跨组件数据共享

apollo-client - Boost - 警告 - ApolloBoost 已使用不支持的选项初始化 : 0

javascript - 如何使用 React Native JS 将一个页面重定向到另一个页面

javascript - react : passing state value as parameter to method

javascript - 尝试使用 react-apollo-hooks 在函数中调用 useQuery

graphql - 突变后,如何跨 View 更新受影响的数据?

reactjs - 每个用户保存或存储购物车元素的最佳方法? (最佳实践或方法)[MERNG STACK]