1

在我的架构中,我有一个类型 (ContentBlock),其中包含使用中继标准连接(边、节点等)的嵌套实体(变体)数组。我有一个视图,允许用户指定一些过滤条件,然后将其作为参数传递给 ContentBlock 类型,并返回一组过滤的变体(过滤很复杂,必须在服务器上完成)。我也有一个不同查询的视图,它不向 ContentBlock 传递任何参数,因此返回所有嵌套的变体。

当从“显示全部”视图切换到“过滤”视图时,Apollo 会执行过滤后的查询,并且存储会更新,使得每个 ContentBlock 实体的变体列表现在只包含过滤后的结果。但是,如果我现在返回“全部显示”视图,我仍然只有过滤后的结果。

我知道当我点击该视图时,我总是可以.refetch()对“显示全部”查询进行查询,但我想知道是否有人建议我可以更改我的架构、查询或存储,以便我可以同时维护过滤结果与完整结果一起,在视图之间切换时不必返回服务器获取数据。

即使在我写这篇文章的时候,我也在考虑将一个字段添加到包含过滤后的变体 id 列表的架构中——这样我仍然可以返回所有变体,但只显示过滤后的变体?但是,在我的应用程序中还有其他情况,我真的不需要获取所有这些(“显示全部”是一个管理视图,大多数用户只会得到过滤后的集合)。

任何想法或建议将不胜感激!

4

0 回答 0