Comments (5)
I haven't looked too much into it yet, but because you have these fragment spreads, try and add the addTypename
option in your build config:
targets:
$default:
builders:
graphql_codegen:
options:
addTypename: true
clients:
- graphql
from graphql_codegen.
I will try it later today, thanks
from graphql_codegen.
It just works, can you explain what is happening with this addTypename
?
from graphql_codegen.
Yes, so because you're using fragments which are conditional on the type of the object it spreads, we need to provide a typename to let it know where to store the data. If it does not have this it'll assume that the fragment spread doesn't match the type and as such not store the data making it null.
The addTypename setting will add the __typename field selection to every object, giving the cache the best conditions to resolve this (together with possibleTypes).
I am considering making this enabled by default.
from graphql_codegen.
Cool thanks
I am considering making this enabled by default.
Cool be a good things to hide from the user view point IMO
from graphql_codegen.
Related Issues (20)
- Trouble Getting Started HOT 2
- 0.13.8 breaking change HOT 2
- [Feature Request] Add support for multiple module projects HOT 13
- Add `id` in the build step like with `__typename` HOT 2
- `Invalid GraphQL: Failed to find type for field` for extended query and same name nesting fields HOT 4
- Replace `when` and `maybeWhen` with pattern matching in Dart 3 HOT 5
- [Suggestion] Generate variable names based off of aliases HOT 2
- Omit fields from a query HOT 5
- Duplicate generated classes HOT 3
- required fields with default value being generated to a nullable field HOT 10
- Add Back `includeIfNullOnInput` build options HOT 8
- Wrong usage of Fragment passed code generation process HOT 2
- [bug] The dissimilarity of fromJSON with data when using fragments over union types HOT 2
- Custom scalars do not work with "input types" HOT 5
- Remove edges and node from parsed data HOT 2
- [Request] Option to make Variables$ required HOT 1
- Add the option to skip a query when using hooks HOT 2
- Create fromJson constructor instead of fromJson method HOT 1
- fromJson with DateTime (and custom types) expects String HOT 8
- Is __typename in idFields required when writing and reading fragments? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graphql_codegen.