vue项目小坑

better-scroll 和fastclick库冲突问题:

通常情况下,我们会使用fastclick库来解决手机端点击事件300ms延迟的问题,使用better-scroll 库来解决一个滑动问题。之前项目中,我在做轮播图的时候用到了better-scroll库,由于轮播图的数据是从接口请求过来,一个很重要的点是:一定要在数据请求拿到之后,再去渲染轮播图模块的代码,即轮播图模块加上v-if判断即可,不然会出问题的;另外初始化better-scroll库一定要在dom渲染完成之后去初始化(因为dom渲染完成之后,我们才内正确计算其content高度,以确保滚动正常),在mounted的回调函数中,倒计时17ms去初始化或者在$nextTick的回调中去初始化(20ms是一个经验值,每一个Tick约为17ms,对用户来说是无感知的)

vue项目小坑_第1张图片
初始化better-scroll

废话不说了,开始说重点,初始化better-scroll有一个配置项click:true,只要你配置了该项,又使用了fastclick库,被better-scroll初始化的这块  的点击事件会失效,原因是:BScroll内部会阻止浏览器默认的click,然后自己派发一个click,然后这个click被fastclick库监听到这个click,它又阻止了该事件,导致click事件不能被执行,所以我们把该配置项去掉即可。

vue项目小坑_第2张图片

你可能感兴趣的:(vue项目小坑)