一个简单的思路:
隐藏需要记录scrollTop的DOM节点,显示详情DOM,前进后退则主要是利用了锚点这个功能,通过锚点的变化来选择显示和隐藏哪些DOM元素。
下面是Vue的实现方法:
首先是路由器需要区别,一种视图是每次进来都需要加载页面的,还有一种视图第一次初始化完毕之后就不再会变化,大家通过v-if=”xxxx”来进行区分,请看下面的代码:
接下来,大家需要在router中配置所谓的v-if中的keepAlive:
只需要上面两部既能保留你所有在上一层路径下的所有状态,自然也包括了滚动条所在的位置。