在 vue.js 中缓存视图

cache view in vue.js

我最近开始使用 vuejs 构建应用程序,但有一个我无法解决的小问题:

我正在使用 vue-router 在页面之间跳转,假设我有一个巨大的列表,其中可能会注入其他项目ajax,用户必须滚动,他点击项目,查看详细信息(在新路线中)并且当返回列表时重新初始化并且必须再次滚动到他之前所在的位置。在使用 vue-router 时,我是否有可能保持给定组件的状态(并像滚动位置一样查看),或者我是否必须在主应用程序组件中保留一些缓存实例,然后将其映射到 init?

谢谢。

本质上,问题是您的组件在内部存储状态。离开会清除状态。我认为有两种方法可以解决这个问题。

1)(quickfix)使用另一种显示项目详细信息的方式(模态,或想到扩展)而不是重定向。这样组件的状态就不会丢失

2) ("proper way") 存储状态。不可避免地,您迟早会遇到这种情况,处理状态存储的最佳方式是 vuex。 https://vuex.vuejs.org/en/intro.html 最初,这将需要一些学习并增加一些复杂性,但这是一项值得的投资