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返回頁面記住滾動位置的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com