Approaching state with GraphQL
How to handle application state with GraphQL? This was the exact question I had when I learned of GraphQL. Then, I reminded myself that the beauty of React is that it's just the view abstraction of the UI. Of course, there are going to be many approaches to handling data. So, the real question is, what makes using GraphQL better or worse than using something such as Context for state management and data fetching?
At a high level, how GraphQL is handled with Apollo Client is similar to what we've done previously in this book. At a more practical level, the value of Apollo Client is its ease of implementation. For example, with Context, you have a lot of implementation work to do just to populate the stores with data. This gets verbose over time, as it's difficult to scale Context beyond a certain point if you've got to write that much code for every new feature that you want to implement.
It's not the individual data points...