mirror of
https://github.com/vercel/commerce.git
synced 2025-07-06 13:01:22 +00:00
🐛 bug: caroucel
:%s
This commit is contained in:
parent
beb9b2e47c
commit
ffec57fa17
@ -87,6 +87,10 @@ export default function Home() {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<ProductCaroucel data={dataTest} itemKey="product-1" isDot={true}/>
|
<ProductCaroucel data={dataTest} itemKey="product-1" isDot={true}/>
|
||||||
|
<div>
|
||||||
|
<FeaturedProductCard title="Sale 25% Coffee Bean" subTitle="50 first Orders within a day" price="$15.00" originPrice="$20.00" imageSrc={image9.src} />
|
||||||
|
<RecipeCard title="Sale 25% Coffee Bean" imageSrc={image12.src} description="Alright, before we get to the actual recipe, let’s chat for a sec about the ingredients. To make this pho soup recipe, you will need:" />
|
||||||
|
</div>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -35,27 +35,39 @@ const CarouselCommon = <T,>({
|
|||||||
slidesPerView,
|
slidesPerView,
|
||||||
slideChanged(s) {
|
slideChanged(s) {
|
||||||
setCurrentSlide(s.details().relativeSlide)
|
setCurrentSlide(s.details().relativeSlide)
|
||||||
|
let dot = 0
|
||||||
|
dotArr.forEach((index)=>{
|
||||||
|
if(s.details().relativeSlide >= Math.floor(index)){
|
||||||
|
dot = index
|
||||||
|
}
|
||||||
|
})
|
||||||
|
setDotActive(dot)
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if(isDot && slider){
|
||||||
|
// console.log('f',Math.ceil(data.length/(Number(slider.details().slidesPerView)||1)))
|
||||||
|
let array:number[]
|
||||||
|
array = [...Array(Math.ceil(data.length/(Number(slider.details().slidesPerView)||1))).keys()].map((i)=>{
|
||||||
|
return (Number(slider.details().slidesPerView)||1)*i
|
||||||
|
})
|
||||||
|
|
||||||
|
setDotArr(array)
|
||||||
|
}
|
||||||
|
}, [isDot,slider])
|
||||||
|
|
||||||
const handleRightArrowClick = () => {
|
const handleRightArrowClick = () => {
|
||||||
slider.next()
|
slider.next()
|
||||||
}
|
}
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
if(isDot && slider){
|
|
||||||
console.log('f',Math.ceil(data.length/(Number(slider.details().slidesPerView)||1)))
|
|
||||||
setDotArr([...Array(Math.ceil(data.length/(Number(slider.details().slidesPerView)||1))).keys()])
|
|
||||||
}
|
|
||||||
}, [isDot,slider])
|
|
||||||
|
|
||||||
const handleLeftArrowClick = () => {
|
const handleLeftArrowClick = () => {
|
||||||
slider.prev()
|
slider.prev()
|
||||||
}
|
}
|
||||||
|
|
||||||
const onDotClick = (index:number) => {
|
const onDotClick = (index:number) => {
|
||||||
slider.moveToSlide(((Number(slider.details().slidesPerView)||1)*index))
|
slider.moveToSlideRelative(Math.floor(index))
|
||||||
setDotActive(index)
|
// setDotActive(index)
|
||||||
|
|
||||||
}
|
}
|
||||||
return (
|
return (
|
||||||
<div className={s.navigationWrapper}>
|
<div className={s.navigationWrapper}>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user