swiper组件快速滑动会抖动是怎么会是?
swiper组件快速滑动的时候会疯狂抖动像鬼畜一样而且根本停不下来,请问有什么解决方案吗?
3 回复
如果你确实需要修改current的值,又担心swiper的抖动,建议你将修改current值的代码,放入setTimeout中异步触发,并且每次都clearTimeout,这样不管你滑动的多快,只执行一次赋值行为。解决赋值导致的自动滚动和你手动快速滑动引起的冲突导致的抖动bug。
类似于:
if (swiperCurrentTimeout) clearTimeout(swiperCurrentTimeout);
swiperCurrentTimeout = setTimeout(() => {this.current = current;});
不要手动滑动了还去设current
仔细阅读文档的 bug & tip
https://developers.weixin.qq.com/miniprogram/dev/component/swiper.html