You are viewing a single comment's thread. Return to all comments →
Working, and passed all tests
import React from "react"; /** * * @param {{slides: {title: string, text: string}}} */ function Slides({ slides }) { const [activeSlideIndex, setActiveSlideIndex] = React.useState(0) const activeSlide = slides[activeSlideIndex] const isLastItem = activeSlideIndex === slides.length - 1 const isFirstItem = activeSlideIndex === 0 const handleRestart = () => { setActiveSlideIndex(0) } const handleNext = () => { if (isLastItem) { return null } setActiveSlideIndex(prev => prev + 1) } const handlePrev = () => { if (isFirstItem) { return null } setActiveSlideIndex(prev => prev - 1) } return ( <div> <div id="navigation" className="text-center"> <button onClick={handleRestart} disabled={isFirstItem} data-testid="button-restart" className="small outlined">Restart</button> <button onClick={handlePrev} disabled={isFirstItem} data-testid="button-prev" className="small">Prev</button> <button onClick={handleNext} disabled={isLastItem} data-testid="button-next" className="small">Next</button> </div> <div id="slide" className="card text-center"> <h1 data-testid="title">{activeSlide.title}</h1> <p data-testid="text">{activeSlide.text}</p> </div> </div> ); } export default Slides;
Seems like cookies are disabled on this browser, please enable them to open this website
Slideshow
You are viewing a single comment's thread. Return to all comments →
Working, and passed all tests