问题描述:当使用Pagination分页组件时,在底部切换页码进入单个商品详情页,点击浏览器后退或者返回按钮,重新加载了当前路由,并未保留进入之前的页码,返回第一页,期望保留进入的页面
解决办法:思路是在进入商品详情页之前记录当前页码保存在sessionStorage,返回时页面加载判断当前页码并且销毁
在页面子组件传入current,并在子组件props接收current:Number
<single v-for="(obj,index) in this.list" :key="index" :obj="obj" :current="current"/>
子组件去详情页时保存页码信息
sessionStorage.setItem("currentPage",this.current);
父组件绑定所有页码:
current: Number(sessionStorage.getItem('currentPage')) ? Number(sessionStorage.getItem('currentPage')) : 1,
在详情页面返回的时候销毁
//返回按钮
back() { this.$router.back(-1)},
//销毁函数
destroyed(){
if(sessionStorage.getItem('currentPage')){
sessionStorage.removeItem('currentPage')
}
},