关于在移动端开发过程中使用better-scroll遇到的bug

我使用的better-scroll版本是2.2.0,在移动端电商开发过程中遇到了不少的bug,在这里特别记录一下。

开发Home组件时

  • 将better-scroll用在首页里:
    当数据请求较慢或者图片加载慢时,BScroll计算出来的scrollerHeight要比理想中的高度小,这时就会出现滚不动页面的情况。
    解决方法:可以给每个图片添加 @load="" 监听图片加载完成情况。
    再通过debounce函数调用scroll.refersh() 刷新一下BScroll。

tab吸顶效果时

  • 在BScroll中position: fixed 会失效

  • 解决方法

  • 在最上面,多复制了一份PlaceHoliderTabControl组件对象,利用它来实现停留效果。

  • 当用户滚动到一定位置时,PlaceHoliderTabControl显示出来。

  • 当用户滚动没有达到一定位置时,PlaceHoliderTabControl隐藏起来。

使用vue-router时

  • 使用vue-router,并且用 keep-alive 保存页面状态时,BScroll有时会将“无视”保存的页面状态。
    解决方法:利用deactived函数将离开页面时滚动的位置保存到变量里,再通过actived函数把变量赋值到scroll.scrollTo方法中。

未待完续……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值