您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“vue中如何實現進入詳情頁記住滾動位置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“vue中如何實現進入詳情頁記住滾動位置”這篇文章吧。
1.首先在路由中引入需要的模塊
{ path: ‘/scrollDemo', name: ‘scrollDemo', meta: { keepAlive: true // 需要緩存 }, component: resolve => { require([‘../view/scrollDemo.vue'], resolve) } }
2.在App.vue中設置緩存組件
<keep-alive> // 緩存組件跳轉的頁面 <router-view v-if="$route.meta.keepAlive" class="ui-view" transition-mode="out-in"></router-view> </keep-alive> // 非緩存組件跳轉頁面 <router-view v-if="!$route.meta.keepAlive" class="ui-view" transition-mode="out-in"></router-view>
3.在頁面注冊對應的事件
1. 在return中定義一個初始值 scroll
2. 在mouted中 ,mouted中的方法代表dom已經加載完畢
window.addEventListener('scroll', this.handleScroll);
3.methods 用于存放頁面函數
handleScroll () { this.scroll = document.documentElement && document.documentElement.scrollTop console.log(this.scroll) }
4. activated 為keep-alive加載時調用
activated() { if(this.scroll > 0){ window.scrollTo(0, this.scroll); this.scroll = 0; window.addEventListener('scroll', this.handleScroll); } }
5.deactivated 頁面退出時關閉事件 防止其他頁面出現問題
deactivated(){ window.removeEventListener('scroll', this.handleScroll); }
以上是“vue中如何實現進入詳情頁記住滾動位置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。