在做h5的的项目,用的react框架 需要用到轮播图所以就用了swiper 但是发现有点问题,轮播图自动播放了一次就不播放了,手动滑动也不能循环播放了 而且进入到别的页面再回来,轮播会抖动 后来我在外层加了个定时器就可以了
但是感觉加定时器不太靠谱,有更好的解决办法吗
componentDidMount() {
setTimeout(() =>{
new Swiper('.swiper-container', {
autoplay: {
disableOnInteraction : false,
},
observer: true,
observeParents: true,
loop: true,
pagination: {
el: '.swiper-pagination',
}
})
},500)
}
这个应该是生命周期选择不合适的问题,对于React的生命周期自己也是看的马马虎虎,不过在查阅相关文章之后了解到componentDidMount这个生命周期只会调用一次,即组件只会渲染一次,所以轮播只会播放一次,或许可以放置到update中