zl程序教程

您现在的位置是:首页 >  前端

当前栏目

Vue - 页面缓存(keep-alive)让容器滚动条回到原来的位置,保存用户浏览位置(从详情页返回列表时发现滚动条位置回到了最顶部,并没有停留在进入详情页之前)

Vue列表容器缓存 用户 页面 没有 返回
2023-09-11 14:15:54 时间

前言

Vue.js / Nuxt.js 项目使用页面缓存(keep-alive)时,
出现了 从详情页返回列表时发现滚动条位置回到了最顶部,并没有停留在进入详情页之前,也找不到问题。

出现该问题非常少见,建议您仔细排查一下,排除其他原因影响到。

本文可以提供给您帮助。

问题分析

正常情况下是不会出现该问题的,滚动条的位置都会被缓存记录,

出现这种情况是因为咱们的页面将子元素容器设置成了 100% 高度,

当容器溢出时,出现滚动条,常见于以下界面:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

直接就是子元素容器 100% 高度,页面 body 滚动条为 0(因为确实没有超出高度)