ホームページ > 記事 > ウェブフロントエンド > vue2.0のルーティング切り替え後にページスクロール位置が変わらないバグの解決方法
ここで、vue2.0 ルーティング切り替え後にページのスクロール位置が変更されないバグの解決策を共有します。これは良い参考値であり、皆様のお役に立てれば幸いです。
最近のプロジェクトでこのような問題に遭遇しました。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('/user') }else{ this.$router.push("/login") } }
解決策は非常に簡単で、次のように監視ルーティングの変更を直接監視し、本体のスクロール距離scrollTopを0に割り当てます。
export default { watch:{ '$route':function(to,from){ document.body.scrollTop = 0; document.documentElement.scrollTop = 0; } } }
追加: ハッシュモードは上記の問題を引き起こすだけであり、vue公式Webサイトには履歴モードでのより良い解決策が記載されています。
上記は私があなたのためにまとめたものです。 related artated article:
Gular4ng2-file-uploadのアップロードコンポーネントを統合します。以上がvue2.0のルーティング切り替え後にページスクロール位置が変わらないバグの解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。