首頁 > web前端 > js教程 > 主體

Vue-Router的滾動行為使用詳解

php中世界最好的语言
發布: 2018-04-17 11:18:28
原創
1715 人瀏覽過

這次帶給大家Vue-Router的滾動行為使用詳解,Vue-Router滾動行為使用的注意事項有哪些,以下是實戰案例,一起來看一下。

捲動行為

使用前端路由,當切換到新路由時,想要頁面滾到頂部,或者是保持原先的滾動位置,就像重新載入頁面一樣。 vue-router 能做到,而且更好,它讓你可以自定義路由切換時頁面如何滾動。

注意: 這個功能只在 HTML5 history 模式下可用。

當建立一個 Router 實例,你可以提供一個 scrollBehavior 方法:

var router = new VueRouter({
  routes: [...],
  scrollBehavior (to, from, savedPosition) {
    // return 期望滚动到哪个的位置
  }
})
登入後複製

scrollBehavior 方法接收 to 和 from 路由物件。第三個參數 savedPosition 當且僅當 popstate 導航 (透過瀏覽器的 前進/後退 按鈕觸發) 時才可用。

這個方法傳回滾動位置的物件訊息,長這樣:

  • # { x: number, y: number }

  • { selector: string }

## 如果傳回一個布林假的值,或是空對象,那麼就不會發生滾動。

範例:

scrollBehavior (to, from, savedPosition) {
 return { x: 0, y: 0 }
}
登入後複製
對於所有路由導航,簡單地讓頁面滾動到頂部。

返回 savedPosition,按下 後退/前進 按鈕時,就會像瀏覽器的原生表現那樣:

scrollBehavior (to, from, savedPosition) {
 if (savedPosition) {
  return savedPosition
 } else {
  return { x: 0, y: 0 }
 }
}
登入後複製
如果你要模擬『滾動到錨點』的行為:

scrollBehavior (to, from, savedPosition) {
 if (to.hash) {
  return {
   selector: to.hash
  }
 }
}
登入後複製
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

Three.js使用詳解

#Particles.js庫在vue裡如何使用

#

以上是Vue-Router的滾動行為使用詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!