Heim >Web-Frontend >js-Tutorial >So implementieren Sie den Scroller in Vue, um zur Seite zurückzukehren und sich die Scroll-Position zu merken

So implementieren Sie den Scroller in Vue, um zur Seite zurückzukehren und sich die Scroll-Position zu merken

亚连
亚连Original
2018-06-08 18:22:203263Durchsuche

In diesem Artikel wird hauptsächlich der Beispielcode für den Vue-Scroller vorgestellt, um zur Seite zurückzukehren und sich die Scroll-Position zu merken. Er ist sehr gut und hat Referenzwert.

1 . KeepAlive festlegen: ob Cache

router:
{
path: '/actlist',
name: 'actlist',
component: actlist,
meta: {
keepAlive: true
}
}

2, Rendering-Seite festlegen

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, Bildlauf aufzeichnen Positionieren und Wert zuweisen

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()
}

Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.

Verwandte Artikel:

So implementieren Sie Standardstiländerungen in elementui

So definieren Sie Ihre eigene Auswahl basierend auf ng-alain in eckige Bauteile?

So erstellen Sie element-ui (ausführliches Tutorial)

Das obige ist der detaillierte Inhalt vonSo implementieren Sie den Scroller in Vue, um zur Seite zurückzukehren und sich die Scroll-Position zu merken. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn