首页 新闻 搜索 专区 学院

vue 路由跳转后滚动条还在上一页的位置

0
悬赏园豆:100 [待解决问题]

问题详细

vue单页应用程序,路由用的hash模式,第一个页面list 拖到页面最底部,点击跳转到detail页面,此时滚动条也还在页面的最底部

重要代码

// list.vue
 toDetail(id) {
      this.$router.push({ path: '/detail', query: { id: id }})
    }

已经使用的解决方法

Vue路由切换后, 页面滚动位置不变BUG处理

这三种方法都尝试了,但无法改变滚动条位置

用的chrome浏览器调试,而且调试中也无法用window.scrollTo(0, 0)来使页面回到顶部

各位园友有什么经验或者思路,不胜感激

杏村牧童的主页 杏村牧童 | 初学一级 | 园豆:102
提问于:2021-12-19 14:56
< >
分享
所有回答(1)
0
const router = new VueRouter({
  mode: 'history',
  // base: locale,
  routes,
  scrollBehavior(to, from, savedPosition) {
    return new Promise((resolve, reject) => {
      setTimeout(() => {
        resolve(window.scroll({ top: 0, left: 0, behavior: "smooth" }))
      }, 400)
    })
  }
});

敲代码挣彩礼 | 园豆:1354 (小虾三级) | 2021-12-19 17:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册