代码之家  ›  专栏  ›  技术社区  ›  Maciej Kwas

在vue中缓存视图。js公司

  •  1
  • Maciej Kwas  · 技术社区  · 7 年前

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

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

    非常感谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Daniel    7 年前

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

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

    2) (“适当方式”)存储状态。不可避免地,您迟早会遇到这种情况,处理存储状态的最佳方法是vuex。 https://vuex.vuejs.org/en/intro.html