我有兴趣获得有关我继承的 Web 应用程序架构的反馈。一些有用的背景:
我们有兴趣提高此应用程序的性能。为此,我很好奇当前的最佳实践是数据获取架构。我对此形成了意见(如下所述),并希望获得关于这是否是一个好方法的反馈。
提议的架构
useQuery
,可以方便地在关心该数据的地方访问相关数据。因此,目前的方法效果很好。我想避免实现大规模状态管理(如 Redux),因为我认为这会使事情变得复杂,并且很多时候会添加不必要的中间层。useQuery
都可以保留在原处,并且基本上会访问 Apollo 缓存而不是网络。简而言之,使用一个大查询来水合缓存并将其用作状态管理解决方案。这种方法有意义吗?我是不是在想什么?
GraphQL 的优势之一是能够准确获取您在 UI 中使用的数据,通过一次查询从后端获取该数据。保持代表性组件免受副作用也是一个很好的做法。 因此,您以更少的队列获取更多数据的想法是完全有道理的。
有一个值得注意的例外。假设您需要在项目中获取要接收并逐页显示的帖子列表。在这种情况下,在单独的查询中获取此列表可能是有意义的,以便更容易实现分页
其他需要考虑的事情: