Компонент запроса, возвращающий ноль для данных, НО сеть показывает ответ - PullRequest
2 голосов
/ 01 июля 2019

Данные нулевые, НО, я вижу ответ в / grahpql & network.

ЧТО ТАКОЕ ЗАПРОС: ШАРЫ:

query GetProductById($product_id: Int!) {
  getProductById(product_id: $product_id) {
    id
    product_id
    name
    product_type
    create_time
    update_time
    sizes
    click_url
    price
    discount_price
    coupon_code
    sale_date
    sku
    colors
    in_stock

    regions {
       ...domestic
       ...international
    }
  }
}

РЕДАКТИРОВАТЬ: ОБНОВЛЕНИЕ: УТОЧНЕНО, ЭТО ВНИЗ :::

    regions {
     ...domestic
     ...international
    }

Я ДУМАЮ, ЧТО ЭТО ПРОБЛЕМА .. НЕТ?

import { IntrospectionFragmentMatcher } from 'apollo-cache-inmemory';

const fragmentMatcher = new IntrospectionFragmentMatcher({
  introspectionQueryResultData: {
    __schema: {
      types: [
        {
          kind: 'INTERFACE',
          name: 'Regions',
          possibleTypes: [
            {
              name: 'domestic'
            },
            {
              name: 'international'
            }
          ]
        }
      ]
    }
  }
});
 export default fragmentMatcher;




  import fragmentMatcher from './RegionFragmentMatcher';

  const cache = new InMemoryCache();
  const apolloClient = new ApolloClient({
    fragmentMatcher,
    cache,
    link: new HttpLink({
      uri: `${config.url}/graphql`,
      credentials: 'include'
    }),
     resolvers: Resolvers(cache),
     addTypename: true,
     dataIdFromObject,
     introspection: true
    });

    export default apolloClient;

1 Ответ

2 голосов
/ 01 июля 2019

FragmentMatcher должен быть передан конструктору InMemoryCache, а не конструктору ApolloClient:

const cache = new InMemoryCache({ fragmentMatcher });

const client = new ApolloClient({
  cache,
  link: new HttpLink(),
});
...