這篇文章主要為大家展示了“vue中scroller如何返回頁面記住滾動位置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“vue中scroller如何返回頁面記住滾動位置”這篇文章吧。
1,設置keepAlive:是否緩存
router: { path: '/actlist', name: 'actlist', component: actlist, meta: { keepAlive: true } }
2,設置渲染頁面
app.vue
<keep-alive> <router-view v-if="$route.meta.keepAlive"></router-view> </keep-alive> <router-view v-if="!$route.meta.keepAlive"></router-view>
3,記錄滾動位置并賦值
beforeRouteEnter(to,from,next){ if(!sessionStorage.askPositon || from.path == '/'){//當前頁面刷新不需要切換位置 sessionStorage.askPositon = ''; next(); }else{ next(vm => { if(vm && vm.$refs.my_scroller){//通過vm實例訪問this setTimeout(function () { vm.$refs.my_scroller.scrollTo(0, sessionStorage.askPositon, true); },0)//同步轉異步操作 } }) } }, beforeRouteLeave(to,from,next){//記錄離開時的位置 sessionStorage.askPositon = this.$refs.my_scroller && this.$refs.my_scroller.getPosition() && this.$refs.my_scroller.getPosition().top; next() }
以上是“vue中scroller如何返回頁面記住滾動位置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。