>웹 프론트엔드 >JS 튜토리얼 >페이지로 돌아가서 스크롤 위치를 기억하기 위해 vue에서 스크롤러를 구현하는 방법

페이지로 돌아가서 스크롤 위치를 기억하기 위해 vue에서 스크롤러를 구현하는 방법

亚连
亚连원래의
2018-06-08 18:22:203263검색

이 글에서는 스크롤 위치를 기억하기 위해 페이지를 반환하는 vue 스크롤러의 예제 코드를 주로 소개합니다. 매우 훌륭하고 참고할만한 가치가 있습니다. 필요한 친구가 참고할 수 있습니다.

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을 기반으로 고유한 선택 구성 요소를 정의하는 방법은 무엇입니까?

element-ui 구축 방법(자세한 튜토리얼)

위 내용은 페이지로 돌아가서 스크롤 위치를 기억하기 위해 vue에서 스크롤러를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.