vue项目小坑
better-scroll 和fastclick库冲突问题:
通常情况下,我们会使用fastclick库来解决手机端点击事件300ms延迟的问题,使用better-scroll 库来解决一个滑动问题。之前项目中,我在做轮播图的时候用到了better-scroll库,由于轮播图的数据是从接口请求过来,一个很重要的点是:一定要在数据请求拿到之后,再去渲染轮播图模块的代码,即轮播图模块加上v-if判断即可,不然会出问题的;另外初始化better-scroll库一定要在dom渲染完成之后去初始化(因为dom渲染完成之后,我们才内正确计算其content高度,以确保滚动正常),在mounted的回调函数中,倒计时17ms去初始化或者在$nextTick的回调中去初始化(20ms是一个经验值,每一个Tick约为17ms,对用户来说是无感知的)
文章图片
初始化better-scroll 【vue项目小坑】废话不说了,开始说重点,初始化better-scroll有一个配置项click:true,只要你配置了该项,又使用了fastclick库,被better-scroll初始化的这块的点击事件会失效,原因是:BScroll内部会阻止浏览器默认的click,然后自己派发一个click,然后这个click被fastclick库监听到这个click,它又阻止了该事件,导致click事件不能被执行,所以我们把该配置项去掉即可。
文章图片
推荐阅读
- vue-cli|vue-cli 3.x vue.config.js 配置
- 2020-04-07vue中Axios的封装和API接口的管理
- 17|17 关山松 第二课作业#公众号项目# D20
- RxJava|RxJava 在Android项目中的使用(一)
- Hacking|Hacking with iOS: SwiftUI Edition - SnowSeeker 项目(一)
- VueX--VUE核心插件
- 靠QQ月入上万灰色暴利偏门的项目
- spring|spring boot项目启动websocket
- vue组件中为何data必须是一个函数()
- 用npm发布一个包的教程并编写一个vue的插件发布