国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

解決vue單頁路由跳轉(zhuǎn)后scrollTop的問題

2019-11-19 13:03:42
字體:
供稿:網(wǎng)友

作為vue的初級使用者,在開發(fā)過程中遇到的坑太多了。在看頁面的時候發(fā)現(xiàn)了頁面滾動的問題,當(dāng)一個頁面滾動了,點(diǎn)擊頁面上的路由調(diào)到下一個頁面時,跳轉(zhuǎn)后的頁面也是滾動的,滾動條并不是在頁面的頂部。

最開始我使用了一個很笨的方法,每個頁面上都加上window.scrollTop(0,0);來解決問題,但是這個太繁瑣了。最后和小伙伴們商量了一下,在main.js頁面上加了這么一段代碼

router.afterEach(function (to) { window.scrollTo(0, 0)})

路由跳轉(zhuǎn)后就不會出現(xiàn)滾動的問題了。

但是這種做法是不友好的,我們可以使用scrollBehavior (to, from, savedPosition) {}來解決問題。

在我們寫路由的時候做個處理,如下

import Vue from 'vue'import Router from 'vue-router'Vue.use(Router); Vue.use(Router) export default new Router({ routes: [ {  path: '/',  name: 'HelloWorld',  component: resolve => require(['../components/HelloWorld.vue'],resolve) } ], scrollBehavior (to, from, savedPosition) { if (savedPosition) {  return savedPosition } else {  return { x: 0, y: 0 } } }})

scrollBehavior 方法接收 to 和 from 路由對象。第三個參數(shù) savedPosition 當(dāng)且僅當(dāng) popstate 導(dǎo)航 (通過瀏覽器的 前進(jìn)/后退 按鈕觸發(fā)) 時才可用。它的使用有很多種,可以試試。

以上這篇解決vue單頁路由跳轉(zhuǎn)后scrollTop的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 荣成市| 依兰县| 鞍山市| 大丰市| 隆化县| 康平县| 宝丰县| 高阳县| 德惠市| 龙陵县| 土默特右旗| 宁远县| 海口市| 宁德市| 韶山市| 金乡县| 宝坻区| 凯里市| 渭南市| 肇州县| 大渡口区| 津市市| 高清| 启东市| 甘孜县| 台州市| 沙洋县| 论坛| 米脂县| 集安市| 徐州市| 龙川县| 神农架林区| 元江| 共和县| 怀远县| 罗定市| 阳春市| 资溪县| 聊城市| 永胜县|