保持原先的滚动位置

场景:

一个商品页面,一直滑 划到中间 然后点进去详情页面了 然后再返回 怎么让他保持在中间的位置

方案1:传商品id 做锚点定位

vue中实现锚点定位以及平滑滚动到指定位置_vue中锚点跳转和页面滚动锚点定位-CSDN博客

javascript 复制代码
    goAnchor(id) {
      var anchor = document.getElementById(id);
      // chrome
      document.body.scrollTop = anchor.offsetTop;
      // firefox
      document.documentElement.scrollTop = anchor.offsetTop;
      // safari
      window.pageYOffset = anchor.offsetTop;
    },
	方法二:
	 goAnchor(id) {
      var anchor = document.getElementById(id);
      anchor.scrollIntoView();
    },

方案2:

从详情页面跳转回来的时候 使用 this.$router.back 不刷新商品页面

方案3:使用keep-alive

vue组件缓存之keep-alive正确使用姿势 (zhihu.com)
vue使用keep-alive详解------实现数据缓存不刷新、修改值后刷新、相同参数区分等_keep-alive :include="cachedviews"方法切换页面如何让部分内容不刷新-CSDN博客

方案4:

滚动行为 | Vue Router (vuejs.org)

相关推荐
爱健身的小刘同学29 分钟前
Vue 3 + Leaflet 地图可视化
前端·javascript·vue.js
神秘的猪头43 分钟前
Ajax 数据请求:从零开始掌握异步通信
前端·javascript
稀饭521 小时前
用changeset来管理你的npm包版本
前端·npm
TeamDev1 小时前
基于 Angular UI 的 C# 桌面应用
前端·后端·angular.js
Komorebi゛1 小时前
【CSS】斜角流光样式
前端·css
Irene19911 小时前
CSS 废弃属性分类总结
前端·css
青莲8432 小时前
Android 事件分发机制 - 事件流向详解
android·前端·面试
musashi2 小时前
用 Electron 写了一个 macOS 版本的 wallpaper(附源码、下载地址)
前端·vue.js·electron
满天星辰2 小时前
Typescript之类型总结大全
前端·typescript
JFChen2 小时前
Web 仔用 Node 像 Java 一样写后端服务
前端