Don*_*eph 3 javascript apollo reactjs graphql react-apollo
我们正在将graphql缓慢添加到我们的react项目中,并替换现有的redux集成。因此,我试图了解阿波罗中的缓存并看到了两件事。
我们有查询要在主页上调用应用程序列表,并且此应用程序列表将在其他页面上使用。所以我尝试的一个选项是在父容器中调用应用程序查询列表,并在子页面中使用client.readQuery,这样对graphql服务器的调用将仅在容器中发生,而在其他页面中它将发生从缓存中调用。但是我看到一些有关在类似情况下使用apollo-link-state的帖子。那么什么是最好的方法?什么时候使用apollo-cache-inmemory?什么时候使用apollo-link-state?
您不应该apollo-cache-inmemory直接与进行比较apollo-link-state。apollo-cache-inmemory用来处理上的缓存Apollo Client,您无需编写任何自定义代码即可工作(除了告诉Apollo Client使用它)。您从中获取的所有数据都会api自动缓存。
apollo-link-state但是,它用于客户端缓存,例如浏览器的NetworkStatus或当前活动选项卡。通常不发回后端服务器的状态。
因此,您只需要考虑是否需要客户端缓存。在我看到的大多数情况下,一个项目最终都将同时使用这两种方法。
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           725 次  |  
        
|   最近记录:  |