zoukankan      html  css  js  c++  java
  • 记录下vue keep-alive IOS下无法保存滚动scroll位置的问题

    最近 做的项目,遇到了一点小麻烦,就是我一个页面A页面是加载 列表数据 ,B页面是展示详细信息的。A进去B时,缓存A页面。

    效果 做出来 后,缓存是缓存数据 了,但是当我A页面的列表数据 好多,要滚动浏览时,点击到B详细信息的再次返回A页面时,

    在安卓下面貌似没什么 问题,滚动到哪里 还是到原来 的位置。在IOS下滚动的位置变了,经自己IP6测试滚动位置都是222,

    后来用百度各种方法,vuex什么的自己也试过还是不行。。后面还是找到了解决方法,

    main.js里面,生成 router时添加以下代码。

        scrollBehavior(to, from, savedPosition) {
            if (savedPosition) {
                return savedPosition;
            } else {
                if (from.meta.saveSrollTop) {
                    from.meta.savedPosition = document.documentElement.scrollTop || document.body.scrollTop;
                }
                return { x: 0, y: to.meta.savedPosition || 0 };
            }
        }

    在自己router配置文件里面添加指定 的缓存属性就可以了

  • 相关阅读:
    在jQuery中.bind() .live() .delegate() .on()的区别
    jquery小结测试题
    揭秘子类构造函数执行过程
    过滤器
    实现AJAX的基本步骤
    AJAX 原生态
    java工程师需要学什么
    Java进阶之路
    git入门大全
    轻松学JVM
  • 原文地址:https://www.cnblogs.com/huzhuhua/p/11571417.html
Copyright © 2011-2022 走看看