首頁 >web前端 >js教程 >在vue中scroller返回頁面並且記住滾動位置如何實現

在vue中scroller返回頁面並且記住滾動位置如何實現

亚连
亚连原創
2018-06-08 18:22:203249瀏覽

這篇文章主要介紹了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 == &#39;/&#39;){//当前页面刷新不需要切换位置
sessionStorage.askPositon = &#39;&#39;;
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()
}

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

相關文章:

在elementui中如何實作預設樣式修改

在angular中基於ng-alain如何定義自己的select組件?

如何建立element-ui(詳細教學)

以上是在vue中scroller返回頁面並且記住滾動位置如何實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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