vue打开多个页面时记录滚动条位置

1.新建permission.js文件

import router from './router'
router.beforeEach((to,from,next)=>{
    let position = window.scrollY; //记录离开页面的位置 
    if (position == null) position = 0;
    sessionStorage.setItem(from.name,window.scrollY);
    next() 
});

router.afterEach((to, from) => {
    let scrollY = sessionStorage.getItem(to.name);
    if(scrollY){
        window.scrollTo(0,scrollY);//定位页面上次滚动的位置
    }else{
        window.scrollTo(0,0);
    }
  });

2.在mian.js里引入该文件

import './permission';
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、目录 ├─src| ├─assets 静态资源文件| ├─componen...
    放飞wlg阅读 1,724评论 0 0
  • 项目准备 在码云新建仓库travel 克隆到本地 在本地仓库所在目录执行 选择y表示继续 样式重置 index.h...
    alfalfaw阅读 3,709评论 0 0
  • vue-cli3项目搭建配置以及性能优化 在之前的开发中主要用的是vue-cli2,最近空闲时间比较多,接下来有新...
    bayi_lzp阅读 19,523评论 16 68
  • 前言: Vue2.0: 一.安装node.js环境: 去node官网下载node.js并安装(http://nod...
    李仁平阅读 10,397评论 0 6
  • vue-cli3项目搭建配置以及性能优化项目初始化 注意:安装前请确保有安装node.js,并且node>=8.9...
    O蚂蚁O阅读 5,289评论 0 1

友情链接更多精彩内容