最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2018年09月03日 11:54:13   作者:小雷雷哥哥  
今天小編就為大家分享一篇解決vue單頁(yè)路由跳轉(zhuǎn)后scrollTop的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

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

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

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

路由跳轉(zhuǎn)后就不會(huì)出現(xiàn)滾動(dòng)的問(wèn)題了。

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

在我們寫路由的時(shí)候做個(gè)處理,如下

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 路由對(duì)象。第三個(gè)參數(shù) savedPosition 當(dāng)且僅當(dāng) popstate 導(dǎo)航 (通過(guò)瀏覽器的 前進(jìn)/后退 按鈕觸發(fā)) 時(shí)才可用。它的使用有很多種,可以試試。

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

相關(guān)文章

最新評(píng)論

三门峡市| 沙雅县| 体育| 太仆寺旗| 桐乡市| 安国市| 泰和县| 双江| 景泰县| 池州市| 图木舒克市| 获嘉县| 准格尔旗| 中宁县| 衡阳县| 阿瓦提县| 枣庄市| 无极县| 嘉祥县| 探索| 高平市| 宁都县| 柳州市| 行唐县| 绵竹市| 鸡西市| 阜城县| 连州市| 鄄城县| 辽宁省| 扎赉特旗| 长武县| 达日县| 晴隆县| 孟津县| 鄂尔多斯市| 杭州市| 新晃| 民县| 定州市| 余江县|