Vue/Apollo:apollo 会关心缓存已经访问过的页面还是我必须将它们保存在我的商店中?

Vue/Apollo: Will apollo care about caching already visited pages or do I have to save them in my store?

我正在使用 apollo 和 vue (nuxt) 构建一个应用程序,我想知道我是否必须在我的商店中保存已经获取的页面,如果我想让它变得超快,每当用户 returns 到页面他已经去过了。

现在我有一个部分是在显示页面之前获取一些 apollo 查询。收到数据后,我可以将其保存到商店中,以便在有人 returns 访问该页面时准备好内容。

但也许 Apollo 正在通过其智能缓存行为为我完成这项工作?

感谢您就此问题提供一些意见。 干杯

Apollo 利用内存中的缓存来缓存您的查询响应,然后在再次触发相同查询时从缓存中检索响应。这是默认行为,尽管也可以通过提供特定的 fetch policy.

来修改它

因为缓存存储在内存中,如果用户刷新页面或导航离开,缓存将被擦除。如果你需要持久化缓存,看看apollo-cache-persist.