首頁 >web前端 >js教程 >vue2.0路由切換後頁面滾動位置不變BUG的解決方法

vue2.0路由切換後頁面滾動位置不變BUG的解決方法

亚连
亚连原創
2018-05-30 13:56:482181瀏覽

下面我就為大家分享一篇vue2.0路由切換後頁面滾動位置不變BUG的解決方法,具有很好的參考價值,希望對大家有所幫助。

最近專案中遇到這樣一個問題,vue切換路由,頁面到頂端的滾動距離仍會保持不變。

<a href="javascript:;" rel="external nofollow" class="btn btn01" @click="useRightNow">立即试用</a>
<router-link class="db" to="/user">个人中心</router-link>

useRightNow(){
 if(判断用户存在){
  this.$router.push(&#39;/user&#39;)
 }else{
  this.$router.push("/login")
 }
}

#解決方法很簡單,如下,直接監控watch路由變化,然後將body的滾動距離scrollTop賦值為0。

export default {
  watch:{
   &#39;$route&#39;:function(to,from){
           document.body.scrollTop = 0;
     document.documentElement.scrollTop = 0; 
   }
  }
 }

# 補充:hash模式下才會導致上述問題,history模式下vue官網有更好的處理方法。

上面是我整理給大家的,希望今後對大家有幫助。

相關文章:

Angular4整合ng2-file-upload的上傳元件

nodejs acl的使用者權限管理詳解

nodejs實作解析xml字串為物件的方法範例

#

以上是vue2.0路由切換後頁面滾動位置不變BUG的解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn