vue3实现详情页返回列表页,返回原来列表页滚动条所在的位置

keepAlive缓存页面 组合式API

  • 第一步
  • 第二步
  • 第三步
  • 第四步

第一步

首先在路由文件的meta里面定义

meta: {keepAlive: false,
},

第二步

在app.vue 根文件下定义代码

<template><keep-alive><router-view v-if="route.meta.keepAlive" /></keep-alive><router-view v-if="!route.meta.keepAlive" />
</template><script setup>
import { useRoute } from "vue-router"
const route = useRoute()
</script>

第三步

在列表页面定义

import { onBeforeRouteLeave } from "vue-router"
import { onActivated } from "vue"onBeforeRouteLeave((to, from, next) => {/判断跳转的页面是否为详细,是的话则储存当前页面的高度if (to.path === '/details') {//这里用的session来存的,当然也可以用vuex 或 pinia 或其它方法sessionStorage.setItem('scrollTop', window.pageYOffset)  } else {sessionStorage.setItem('scrollTop', 0) }next();
})
onActivated(() => {  setTimeout(() => {let scrollPosition = sessionStorage.getItem('scrollTop')// console.log('我执行了', scrollPosition);window.scrollTo(0, scrollPosition)}, 300)
})

第四步

在详情页面定义

import { onBeforeRouteLeave } from "vue-router"onBeforeRouteLeave((to, from, next) => {//判断返回的页面 是否为列表页,是则添加缓存的组件if (to.path === '/list') {to.meta.keepAlive = true} else {to.meta.keepAlive = false}next();
})

ps:如果是vue2或vue3选项式 API可以直接beforeRouteEnter在列表页面使用,并使用from.meta.keepAlive = true

因为Vue3 组合式api路由没有这个导航守卫了,所以没法用beforeRouteEnter
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/145557.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前后端交互—跨域与HTTP

跨域 代码下载 同源策略 同源策略(英文全称 Same origin policy)是浏览器提供的一个安全功能。 MDN 官方给定的概念:同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这 是一个用于隔离潜在恶意文件的重要安全机制。 通俗的理解:浏览器规定&a…

二叉树题目:最大二叉树

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;最大二叉树 出处&#xff1a;654. 最大二叉树 难度 5 级 题目描述 要求 给定一个没有重复元素的整数数组 num…

品牌公关稿件怎么写?纯干货

品牌公关稿件成为了各大企业传播价值观、提升品牌形象的重要手段。然而&#xff0c;如何撰写一篇高质量的、吸引人的品牌公关稿件却让许多人头疼不已。本文伯乐网络传媒将从选题、结构、语言、传播等方面&#xff0c;为您详细解析品牌公关稿件的写作技巧&#xff0c;帮助您轻松…

JAVA毕业设计101—基于Java+Springboot的电影购票微信小程序带后台管理(源码+数据库)

基于JavaSpringboot的电影购票微信小程序带后台管理(源码数据库)101 一、系统介绍 本系统是小程序前台&#xff0c;带后台管理 本系统分为管理员、用户两种角色 管理员功能&#xff1a; 登录、统计分析、密码修改、用户管理、广告管理、影院管理、分类管理、电影管理、场次…

不会用PS抠图?教你懒人抠图法,必须学会!

相信很多小伙伴都有遇到这样的窘境——好不容易找到得素材图片&#xff0c;中间的图案很好看&#xff0c;可是特别想去掉后面的背景&#xff0c;应该如何抠图呢&#xff1f; 能够将图片中的物品或人物抠出来是一种很有用的技巧&#xff0c;可以在很多场景下应用&#xff0c;比…

畅行全球,美格智能SLM750模组锻造出海核心优势

什么是产品认证制度&#xff1f; 国际标准化组织&#xff08;ISO&#xff09;将产品认证定义为&#xff1a;由第三方通过检验评定企业的质量管理体系和样品型式试验来确认企业的产品、过程或服务是否符合特定要求&#xff0c;是否具备持续稳定地生产符合标准要求产品的能力&am…

2023-mac brew安装python最新版本,遇见的问题和处理方式

#### 创建Python3.11.6符号链接我现在遇见这个问题了&#xff1a;python --version -bash: python: command not found 192:bin wangyang$ python3 --version Python 3.9.6 192:bin wangyang$ /usr/local/bin/python3 --version Python 3.11.6我要怎么做&#xff0c;我才可以直…

大热电视剧《好事成双》里的IT故事:科班程序员指法篇

自2023年9月19日在央视八套首播&#xff0c;并在腾讯视频同步播出以来&#xff0c;电视剧《好事成双》聚焦当代社会环境&#xff0c;《好事成双》用生动的群像故事触动人心&#xff0c;描绘了一幅当代都市男女的生活画卷&#xff0c;热度持续走高&#xff0c;成为中秋、国庆假日…

关于在公众号刷到自己博客这件事

微信公众号 探索云原生 正式启用了&#xff0c;欢迎大家关注。 吐槽&#xff1a;竟然在微信公众号刷到自己的文章&#x1f923;&#xff0c;这也太巧了吧。 吐槽&#xff1a;这也太巧了吧 周五&#xff0c;开心的下班回到家&#xff0c;刷会微信。 发现关注的某大佬的公众号又…

构建高性能应用的利器:Nginx反向代理及配置详解

一、Nginx概念解读 对于新事物的理解&#xff0c;最好的方式就是从概念入手&#xff0c;本文作为《Nginx专题》系列文章的第一篇&#xff0c;先从Nginx的名称开始来分解这个神秘的引擎。 Nginx&#xff0c;是engine X的缩写&#xff0c;发音也是engine x&#xff0c;2004年由…

XPS的锂电池表征技巧-科学指南针

XPS作为一种表面表征手段&#xff0c;这是它一个很大的限制&#xff0c;同时也是它一个很大的优势&#xff0c;正所谓“其术专则其艺必精”。限于笔者专业背景&#xff0c;此次主要讲述XPS在锂离子电池中的应用。 而由于XPS测试是一种表面分析手段&#xff0c;故其在锂离子电池…

短视频矩阵系统源码---php搭建

一、智能剪辑、矩阵分发、无人直播、爆款文案于一体独立应用开发 抖去推----主要针对本地生活的----移动端(小程序软件系统&#xff0c;目前是全国源头独立开发)&#xff0c;开发功能大拆解分享&#xff0c;功能大拆解&#xff1a; &#xff08;1&#xff09;数据概览&#x…