У меня есть приложение, написанное с разумом-реакцией с использованием apollo-client.Я определил некоторые фрагменты на внешнем интерфейсе, чтобы в основном использовать некоторые определения полей.Я настраиваю автоматические тесты для компонентов, которые используют фрагменты, но я продолжаю получать это предупреждение о том, что мне нужно использовать IntrospectionFragmentMatcher
.
'You are using the simple (heuristic) fragment matcher, but your queries contain union or interface types. Apollo Client will not be able to accurately map fragments. To make this error go away, use the `IntrospectionFragmentMatcher` as described in the docs: https://www.apollographql.com/docs/react/advanced/fragments.html#fragment-matcher'
Я попытался настроить средство сопоставления фрагментов в соответствии с документы .Результат codegen не возвращает типов:
{
"__schema": {
"types": []
}
}
Когда я запросил свой сервер и посмотрел на ручной метод, рекомендованный apollo-client, я заметил, что он также не возвращает типов.
Еще один странныйДело в том, что когда я не использую средство сопоставления фрагментов, я получаю поддельный ответ, но я просто получаю предупреждения от Аполлона.Если я его использую, то смоделированный ответ не будет возвращаться правильно.
Зачем мне запрашивать api graphql для фрагментов, определенных в моем коде внешнего интерфейса?Почему я получал эти ошибки только при выполнении тестов и использовании фиктивных данных, но не при запуске моего реального приложения?