vue-element-admin 页签切换保留滚动位置

因为项目中引入了  @vue/composition-api  ,因此以下代码为 vue3 + vue2 写法(因为vue-router 3版本不能在 steup 中使用),有好的建议可以提一下~~

import {onActivated, getCurrentInstance } from '@vue/composition-api'
export default {
    data() {
        return {
            curScrollTop: 0,
        }
    },
    beforeRouteLeave (to, from, next) {
        this.curScrollTop = document.documentElement.scrollTop || 0
        next()
    },
    setup() {
        // 记录滚动位置,返回页面恢复到滚动位置
        const comData = getCurrentInstance();
        onActivated(() => {
            document.documentElement.scrollTop = comData.data.curScrollTop || 0
        })
    }
}

 

posted @ 2022-07-27 18:36  生命在于折腾Up  阅读(512)  评论(0)    收藏  举报