import { useState, useEffect, useRef } from "react"; import SkillCard from "./SkillCard"; import "../styles/SingleProject.css"; function SingleProject({ image, title, description, skills, color, nbImage }) { const [imageID, setImageID] = useState(1); const [isFading, setIsFading] = useState(true); const intervalRef = useRef(null); const handleChangeImage = (direction) => { if (nbImage <= 1) return; setIsFading(false); setTimeout(() => { setImageID((prevID) => direction === 1 ? (prevID % nbImage) + 1 : prevID === 1 ? nbImage : prevID - 1 ); setIsFading(true); }, 300); clearInterval(intervalRef.current); startAutoSlide(); }; const startAutoSlide = () => { intervalRef.current = setInterval(() => { handleChangeImage(1); }, 5000); }; useEffect(() => { startAutoSlide(); return () => clearInterval(intervalRef.current); }, []); return (
{description}
Learn more