反应阿波罗查询组件与client.query

时间:2019-08-22 11:21:38

标签: react-apollo

任何可行的想法

this.props.client.query({
       query: PRODUCTS_LIST
    })
    .then(response => console.log(response.data))

但这不起作用吗?

<Query query={PRODUCTS_LIST} client={this.props.client}>
          {(loading, error, data) => {
            if (loading) return <div>Fetching</div>
            if (error) return <div>Error</div>

            console.log(data)

            return (
              <div>
              </div>
            )
          }}
        </Query>

我正在使用ApolloProvider并包装组件withApollo(componentName)

我想念什么?

1 个答案:

答案 0 :(得分:0)

您无需将组件包装在withApollo()中,只要该组件是ApolloProvider的子代(不必是直接子代)即可。

我们可以看到您的PRODUCTS_LIST代码-它包装在gql标签中吗?它是否包含“查询”部分。例如:

export const PRODUCTS_LIST = gql`
  query productList {
    productList {
      items {
        id
      }
    }
  }
`