찾다
웹 프론트엔드JS 튜토리얼React.js에서 페이지 매김을 만드는 방법 다시 시작, 이전, 다음

How to make pagination in react.js Restart, Prev, Next

블로그 게시물: React에서 간단한 슬라이드 탐색 구성 요소 구축

이 게시물에서는 React에서 기본 슬라이드 탐색 구성 요소를 만드는 방법을 살펴보겠습니다. 이 구성 요소를 사용하면 사용자는 "다시 시작", "이전" 및 "다음" 버튼을 사용하여 일련의 슬라이드를 탐색할 수 있습니다. React의 useState 후크를 사용하여 현재 슬라이드 인덱스를 관리하고 적절한 경우(예: 슬라이드 데크의 시작 또는 끝에서) 버튼이 비활성화되었는지 확인합니다.

강령 개요

Slides 구성요소는 소품으로 슬라이드 배열을 받습니다. 각 슬라이드에는 제목과 일부 텍스트가 포함되어 있습니다. 탐색 버튼을 사용하면 슬라이드에서 앞뒤로 이동할 수 있으며, '다시 시작' 버튼을 사용하면 첫 번째 슬라이드로 돌아갈 수 있습니다.

useState를 사용하여 상태 관리

useState 후크를 사용하여 현재 슬라이드 인덱스를 관리합니다.

const [currentSlideIndex, setCurrentSlideIndex] = useState(0);

이 상태는 현재 표시된 슬라이드를 추적합니다. 슬라이드 0에서 시작하여 사용자가 "이전", "다음" 또는 "다시 시작" 버튼을 클릭하면 이 값을 업데이트합니다.

버튼 클릭 처리

각 버튼의 동작을 처리하는 세 가지 기능을 정의합니다.

  1. 다시 시작 버튼: 현재 슬라이드 인덱스를 0으로 재설정하여 사용자를 첫 번째 슬라이드로 되돌립니다.
const handleRestart = () => {
  setCurrentSlideIndex(0);
};
  1. 이전 버튼: 슬라이드 색인을 1씩 줄이지만 0(첫 번째 슬라이드) 아래로 내려가지 않도록 합니다.
const handlePrev = () => {
  setCurrentSlideIndex((prevIndex) => Math.max(prevIndex - 1, 0));
};
  1. 다음 버튼: 슬라이드 색인을 1씩 늘리지만 마지막 슬라이드를 넘지 않도록 합니다.
const handleNext = () => {
  setCurrentSlideIndex((prevIndex) => Math.min(prevIndex + 1, slides.length - 1));
};

버튼 비활성화

사용자가 첫 번째 슬라이드를 볼 때 "이전" 및 "다시 시작" 버튼을 비활성화하고, 마지막 슬라이드를 볼 때 "다음" 버튼을 비활성화합니다.

<button data-testid="button-restart" onclick="{handleRestart}" disabled>
  Restart
</button>

<button data-testid="button-prev" onclick="{handlePrev}" disabled>
  Prev
</button>

<button data-testid="button-next" onclick="{handleNext}" disabled slides.length>
  Next
</button>

슬라이드 콘텐츠 렌더링

구성 요소는 currentSlideIndex 상태를 사용하여 현재 슬라이드의 제목과 텍스트를 렌더링합니다.

<div>



<h4>
  
  
  결론
</h4>

<p>이 간단하면서도 효과적인 슬라이드 탐색 구성 요소는 UI 상태 관리를 위한 React의 useState의 강력한 기능을 보여줍니다. 동적 상태 및 이벤트 처리를 사용하여 사용자가 사용자 친화적인 방식으로 슬라이드와 상호 작용할 수 있는 유연한 구성 요소를 만들었습니다. 애니메이션이나 자동 슬라이드 전환과 같은 기능을 추가하여 이 구성요소를 확장할 수 있습니다.</p>


          </div>

            
        

위 내용은 React.js에서 페이지 매김을 만드는 방법 다시 시작, 이전, 다음의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
JavaScript 이미지 팝업 창 종료 논리 최적화 : 이벤트 충돌을 피하기위한 실용 가이드JavaScript 이미지 팝업 창 종료 논리 최적화 : 이벤트 충돌을 피하기위한 실용 가이드Sep 10, 2025 pm 01:06 PM

이 튜토리얼은 JavaScript에서 이미지 팝업 창 종료 버튼의 실패 문제를 해결하는 것을 목표로합니다. 이벤트 충돌은 팝업을 열고 닫기위한 이벤트 소스에 겹치는 경우 발생할 수 있습니다. 핵심 솔루션은 팝업 윈도우의 개방 및 종료 트리거를 분리하는 것이며 CSS 클래스를 사용하여 팝업 창의 디스플레이 상태를 관리하여 코드의 유지 관리 및 사용자 경험을 향상시키고 팝업 창을 정상적으로 닫을 수 있도록 권장됩니다.

객체 배열에서 식사 유형 값 추출 : JavaScript에 대한 실용 가이드객체 배열에서 식사 유형 값 추출 : JavaScript에 대한 실용 가이드Sep 10, 2025 pm 01:03 PM

이 기사는 개발자가 식사 유형 배열이 포함 된 다양한 객체에서 모든 식사 유형 값을 효율적으로 추출하도록 돕는 것을 목표로합니다. JavaScript의 FlatMap 방법을 사용하여 간결하고 명확한 방식으로이를 달성하여 불필요한 복잡성을 피하고 프로젝트에 쉽게 적용 할 수 있도록 명확한 코드 예제 및 고려 사항을 제공합니다.

JavaScript에서 ID 별 그룹 데이터 및 모든 선택 기능을 가진 학생 목록을 동적으로 생성합니다.JavaScript에서 ID 별 그룹 데이터 및 모든 선택 기능을 가진 학생 목록을 동적으로 생성합니다.Sep 10, 2025 pm 01:00 PM

이 자습서는 JavaScript를 사용하여 복잡한 목록 데이터를 그룹화하고 그룹화 결과를 기반으로 "모든 선택"기능으로 HTML 사용자 인터페이스를 동적으로 생성하는 방법을 자세히 설명합니다. 효율적인 데이터 그룹화는 array.prototype.reduce를 통해 달성됩니다. 동적 HTML 구조는 Object.Values ​​및 Array.Prototype.map을 사용하여 구성되며 마지막으로 "모든 선택"의 대화식 로직은 각 그룹에 대해 이벤트 리스너를 통해 구현됩니다.

Moment.js를 사용하여 날짜 속성이 기준을 충족하지 않는 배열에서 객체를 필터링합니다.Moment.js를 사용하여 날짜 속성이 기준을 충족하지 않는 배열에서 객체를 필터링합니다.Sep 10, 2025 pm 12:54 PM

이 기사는 Moment.js 라이브러리와 결합 된 JavaScript의 Array.prototype.filter () 메소드를 사용하여 날짜 속성이 특정 조건을 충족하지 않는 배열에서 객체를 효율적으로 필터링하는 방법을 자세히 살펴 봅니다 (예 : 만료 날짜는 현재 날짜보다 이전). 우리는 필터 () 메소드의 비 인치 수정 기능을 구문 분석하는 데 중점을두고 개발자가 일반적인 함정을 피하고 필터링 된 데이터를 올바르게 얻고 처리 할 수 ​​있도록 명확한 코드 예제를 제공합니다.

GitHub에서 API를 통해 JSON 파일 컨텐츠 및 대안을 업데이트하는 방법GitHub에서 API를 통해 JSON 파일 컨텐츠 및 대안을 업데이트하는 방법Sep 10, 2025 pm 12:48 PM

이 기사에서는 GitHub 페이지와 같은 정적 호스팅 환경에서 클라이언트 HTTP Post 요청을 통해 JSON 파일의 내용을 직접 수정하는 것이 불가능한 이유를 자세히 살펴보고 CORS 오류의 이유를 설명합니다. 이 자습서는 독자들에게 Github API를 사용하여 파일을 업데이트하는 방법을 안내하고, 클라이언트 운영의 잠재적 보안 위험을 강조하고 전문 백엔드 서비스 및 데이터베이스를보다 강력한 동적 데이터 관리 솔루션으로 사용하는 것을 권장합니다.

JavaScript Path2D 객체 : 변수 참조 이해 및 사용자 지정 이름 지정 추적 구현JavaScript Path2D 객체 : 변수 참조 이해 및 사용자 지정 이름 지정 추적 구현Sep 10, 2025 pm 12:42 PM

JavaScript에서 Path2D 객체 자체는 변수 이름을 저장하지 않습니다. 변수는 오브젝트 자체의 속성이 아니라 객체의 메모리 주소에 대한 참조입니다. 이 기사는이 메커니즘을 깊이 탐색하고 복잡한 그래픽을 디버깅하고 관리 할 때 가독성을 향상시키기 위해 추가 변수 또는 구조를 통해 PATH2D 객체에 대한 사용자 정의 명명 및 추적을 구현하는 실질적인 방법을 제공합니다.

HTMX 및 Django를 사용하여 버튼을 클릭 한 후 동적 업데이트를 달성하십시오.HTMX 및 Django를 사용하여 버튼을 클릭 한 후 동적 업데이트를 달성하십시오.Sep 10, 2025 pm 12:36 PM

이 기사는 개발자에게 HTMX 라이브러리 및 Django 프레임 워크 사용 방법을 안내하여 버튼을 클릭 한 후 동적으로 업데이트하는 버튼 상태의 기능을 달성하는 것을 목표로합니다. 우리는 프론트 엔드 HTMX 코드 작성, 백엔드 Django보기 기능의 구현 및 JSON 응답을 통해 데이터를 전달하는 방법을 자세히 소개하고 버튼 상태의 새로 고침없는 업데이트를 달성 할 것입니다. 이 기사는 HTMX가 요소를 대체 한 후 JavaScript가 요소를 올바르게 참조 할 수없는 문제를 해결하고 완전한 솔루션을 제공하는 데 중점을 둡니다.

iOS 사파리 브라우저의 전체 화면 모드에 대한 제한 및 적응 정책iOS 사파리 브라우저의 전체 화면 모드에 대한 제한 및 적응 정책Sep 10, 2025 pm 12:30 PM

이 기사에서는 iPhone Safari 브라우저에서 전체 화면 모드, 특히 비 메드 디아 컨텐츠가 포함 된 DIV 또는 Iframes와 같은 비 메드 디아 요소에 대한 요청 풀 스크린 API 제한을 구현할 때 발생하는 일반적인 문제를 탐구합니다. 우리는 iOS 사파리의 고유 한 행동을 설명하고 CSS 기반 대안을 제공하고 미디어 컨텐츠에 대한 올바른 구현을 제공하여 개발자가 이러한 플랫폼 별 문제를 극복 할 수 있도록 도와줍니다.

See all articles

핫 AI 도구

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Stock Market GPT

Stock Market GPT

더 현명한 결정을 위한 AI 기반 투자 연구

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경