列表页面
data () {
return {
pageInfo: {
pageIndex: 1,
pageSize: 20
}
formPath: ''
}
}
// 进入页面先获取页面来源,用来判断是否是详情页面返回列表
beforeRouteEnter (to, from, next) {
next((vm) => {
vm.fromPath = from.path
})
},
mounted () {
// 如果有pageInfo 并且是详情页面过来的就取缓存
if (sessionStorage.getItem('pageInfo') && this.fromPath.includes('/product/detail')) {
const pageInfo = sessionStorage.getItem('pageInfo') || null
if (pageInfo) this.pageInfo = JSON.parse(pageInfo)
} else {
sessionStorage.removeItem('pageInfo')
}
// 获取列表
this.getList()
},
methods: {
goDetail(id) {
sessionStorage.setItem('pageInfo', JSON.stringify(this.pageInfo))
this.$router.push({
path: `/product/detail/${aId}`,
})
}
}
// 销毁页面时删除缓存
destroyed () {
sessionStorage.removeItem('pageInfo')
},
详情页面
mounted () {
sessionStorage.setItem('pageInfo', true)
},