Redux GraphQL和Apollo提供程序和存储。。。它非常嵌套

Redux GraphQL和Apollo提供程序和存储。。。它非常嵌套,redux,graphql,apollo,Redux,Graphql,Apollo,所以,我要经过商店 <ApolloProvider store={store} client={apolloClient}> 但没有“国家”?我的意思是,如果我调用getState(),当然可以,但这似乎与我通常在没有Apollo的情况下执行redux时完全不同。我得到我的“状态树”。。。在这里,我明白了 使用redux w/graphql时的“正常”或“最佳实践”是什么 像这样访问国家道具似乎太过分了: if (this.props.client.state.getState

所以,我要经过商店

  <ApolloProvider store={store} client={apolloClient}>
但没有“国家”?我的意思是,如果我调用getState(),当然可以,但这似乎与我通常在没有Apollo的情况下执行redux时完全不同。我得到我的“状态树”。。。在这里,我明白了

使用redux w/graphql时的“正常”或“最佳实践”是什么

像这样访问国家道具似乎太过分了:

if (this.props.client.state.getState().whatever.foo)

使用对本地状态的查询并做出如下反应:

import gql from 'graphql-tag';
import { useQuery } from '@apollo/react-hooks';
//...
export default () => {
    const { data } = useQuery(gql('query GetTableFilter { selectedMall @client }'));
    // ... do something with data.selectedMall

使用对本地状态的查询并做出如下反应:

import gql from 'graphql-tag';
import { useQuery } from '@apollo/react-hooks';
//...
export default () => {
    const { data } = useQuery(gql('query GetTableFilter { selectedMall @client }'));
    // ... do something with data.selectedMall