我有一个反应本机滑动组件,当我滑动时会自动滚动,这会导致两个图像显示在一起,但如果我删除 onindexchanged() 它不会这样做 问题 滑动时我想要什么
代码
<Swiper
index={0}
loop={false}
autoplay={false}
onIndexChanged={(index) => {
setCurrentIndex(index)
}}
showsPagination={false}
loadMinimal
loadMinimalSize={1}
horizontal={false}
>
{[{ id: "cover", image: image }, ...images]
.filter((item) => item.image)
.map((item, index) => (
<Manga
key={item.id}
coverImage={item.image}
img={item.image}
index={index}
blurStatus={blurStatus}
overlayVisible={overlayVisible}
commentsForImages={commentsForImages}
refRBSheet={refRBSheet}
/>
))}
</Swiper>
这导致了问题
onIndexChanged={(index) => {
setCurrentIndex(index);
}}
这不是
onIndexChanged={(index) => {
console.log(index)
}}
通过使用loadesh,您可以稍微静默瞬时传入的数据。 例如:
const handleIndexChanged = useCallback(
debounce((index) => {
setCurrentIndex(index);
}, 100),
[]
);