最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
vue返回上一页面时回到原先滚动的位置的方法
时间:2022-06-25 15:26:13 编辑:袖梨 来源:一聚教程网
项目结束,测试时发现在首页商品列表中,向上滑动几页后点击进入详情,从详情页面返回商品列表时,页面回到了最顶部,测试不通过说是用户体验不好,要求从哪里点击进去返回该页面时回到原先的滚动页面。
思路:因为vue是单页面应用,进入其他页面时会销毁该页面,用keep-alive不让其刷新,具体实现为:
(1).在App.vue中加入:
(2).index.js页面
export default new Router({
routes: [{
path: '/',
name: 'index',
component: index,
meta: {
keepAlive: true
}
},
这样在index.vue中,mounted方发只走一次,在浏览器上实现了返回原来滚动位置的目的。但是在手机上测试,发现没用,解决手机上实现目的的方法:
//在页面离开时记录滚动位置
beforeRouteLeave (to, from, next) {
this.scrollTop = document.documentElement.scrollTop || document.body.scrollTop
next()
},
//进入该页面时,用之前保存的滚动位置赋值
beforeRouteEnter (to, from, next) {
next(vm => {
document.body.scrollTop = vm.scrollTop
})
},
OK!实现!!
相关文章
- 崩坏星穹铁道3.8橡木鸣蛀之梦积木迷钟解密流程攻略 12-24
- yandex登录入口一键直达-俄罗斯搜索引擎官方登录入口 12-24
- 豆包官网网页版入口-豆包AI智能在线体验 12-24
- 崩坏星穹铁道3.8橡木鸣蛀之梦帮派迷钟解密流程攻略 12-24
- 嘟嘟脸恶作剧在哪预约 全平台预约渠道预约奖励介绍 12-24
- 漫蛙2(Manwa2)漫画最新网页版极速入口-漫蛙2在线阅读一键直达 12-24