尤其是在长内容页面中,用户可能希望在不同的路由间切换时,能够优雅地保持当前位置,或者每次切换都自动滑到顶部,就像是给用户提供了一张“快速回到顶部的魔法飞毯”。而这正是 Vue Router 的 scrollBehavior 方法大显身手的地方,它可以满足各种滚动需求,让页面跳转不再像是迷路的小船,而是流畅的航程。本文将带你...
scrollBehavior (to, from, savedPosition) {if(savedPosition) {//保持原先的滚动位置returnsavedPosition }else{//滚动到顶部return{ x: 0, y: 0} } } 使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样。vue-router能做到,而且更好,它让你可以自定义路由切换...
1.直接返回带x,y坐标的对象,对于所有路由导航,简单地让页面滚动到顶部 scrollBehavior (to,from, savedPosition) {return{x:0,y:0} } 2.返回savedPosition,在按下后退/前进按钮时,才能用 如果是点击前进/后退,跳转后仍保留在当前位置->返回savedPosition 否则就是普通的路由跳转,滚动到顶部->直接返回Position(...
使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样。这个功能只在支持 history.pushState 的浏览器中可用。 1. 最简单的方法:scrollBehavior importVuefrom'vue'importVueRouterfrom'vue-router'Vue.use(VueRouter)constHome={template:'home'}constFoo={template:'foo'}...
滚动行为 我们可以通过vue-router自定义路由切换时页面如何滚动。比如,当跳转到新路由时,页面滚动到某个位置;切换路由时页面回到之前的滚动位置。 当创建路由实例时,我们只需要提供一个scrollBehavior方法: 代码语言:javascript 复制 constrouter=createRouter({history:createWebHashHistory(),routes:[...],scrollBehavior...
背景 使用router-view跳转页面时,每次跳转,页面都定位到当前看的位置 思路 路由跳转后添加回滚到顶部操作 方案 方案一、再main.js中添加如下代码 方案二、再A...
vue-router可以让你自定义路由切换时页面如何滚动(滚动到顶部或保持原先的滚动位置)。当且仅当popstate导航(即通过浏览器的前进/后退按钮触发)时才可用。 const router = new VueRouter({ routes, scrollBehavior(to, from, savedPosition) { return { x: 0, y: 400 } } }) (2)、参数 to:Route 目标路由...
在Vue 3 中,你可以使用 Vue Router 和 sessionStorage 或 localStorage 来实现用户登录后跳回原来的页面。以下是一种常见的实现方式: 在用户登录之前,记录当前页面的路由路径: 在需要登录的页面组件中,在用户点击登录前,使用this.$route.path获取当前页面的路由路径,并将其存储在 sessionStorage 或 localStorage 中(选...
我们在使用vue router-link组件进行页面跳转时,会出现当前页面在什么位置,跳转页面也在什么位置 这样如果当前页面过长,跳转的效果就不是很好 如何解决这一问题呢?很简单!只需要在router文件夹下的index.js文件中添加一段代码即可 如下图所示,添加如下代码,就完美解决这个问题了!scrollBehavior(to,from,saveTop)...
首先,在vue-router中,scrollBehavior这个方法是可以打印访问过的页面,滚动的位置的。【注意:在刷新页面时,不会触发该事件】 我们可以使用vuex储存滚动的位置(因页面会做接口请求数据,所以要在数据渲染完成后,再进行跳转) store.commit('SET_ROUTER_POSITION', savedPosition|| {}) ...