【问题标题】:GraphQL react-apollo - is it okay to export/import client directly?GraphQL react-apollo - 可以直接导出/导入客户端吗?
【发布时间】:2018-12-09 20:20:42
【问题描述】:

我有一个 apollo 设置文件 services/apollo.js,用于导出客户端:

const client = new ApolloClient({
  cache,
  link: ApolloLink.from([stateLink, httpLink])
})

export default client

然后我将其导入并在其他地方正常使用:

<BrowserRouter>
  <ApolloProvider client={client}>
    <App />
  </ApolloProvider>
</BrowserRouter>

如果我想直接使用客户端(例如手动触发查询),是否可以直接将其导入文件,而不是通过ApolloConsumer 访问它?

import client from 'services/apollo'

export const getSomeData = async () => {
  const { data } = await client.query({ ... })

  console.log(data)
}

【问题讨论】:

    标签: graphql apollo react-apollo


    【解决方案1】:

    是的,应该没问题。

    这篇博文提到对 Apollo 使用单例:

    我使用带有唯一 apollo 客户端的单例来保持唯一缓存 并在所有代码中使用。

    https://cheesecakelabs.com/blog/apollo-graphql-client-makes-api-integration-breeze/

    【讨论】:

    • 感谢您的精彩文章?
    猜你喜欢
    • 2022-12-12
    • 1970-01-01
    • 2019-06-22
    • 2023-03-19
    • 2023-04-09
    • 2017-12-29
    • 2018-08-26
    • 2020-08-23
    相关资源
    最近更新 更多