4 ms·
Yes, I'm saying that getting those props to those children in the first place is annoying to do and I'd still have to build a bunch of `context` helpers on top
by exogen 9y ago
Yes, I'm saying that getting those props to those children in the first place is annoying to do and I'd still have to build a bunch of `context` helpers on top of Relay and Apollo to make doing that nice.
This is the API I want:
<Artist mbid="abc-123">
<Artist.Name />
<Artist.Disambiguation />
<SomeOtherComponentThatHasArtistFieldDescendants />
</Artist>
This is the API you're saying I would have to use with vanilla Relay and Apollo:
<Artist mbid="abc-123">
<Artist.Name mbid="abc-123" />
<Artist.Disambiguation mbid="abc-123" />
<SomeOtherComponentThatHasArtistFieldDescendants mbid="abc-123" />
</Artist>
- exogen 9y agoAssuming I did build HOCs for doing so, the difference boils down to this: in your approach, query variable props would magically be passed down the component tree via `context` and used by descendant components in duplicated queries. The way I've built it, query fragments are magically passed up the component tree via `context` and used in a single query. Considering neither are possible with vanilla Relay and Apollo and I need to build these helper HOCs either way, I don't really see why what you're proposing is better. I had already considered them both and deliberately did not do it that way.