Vue의 Pagination 구성 요소의 예
재사용 가능한 VUE 페이징 구성 요소를 구현하려면 다음과 같은 주요 포인트를 명확히해야합니다. 1. 총 라인 수, 페이지 당 라인 수 및 현재 페이지 번호를 포함한 소품을 정의합니다. 2. 총 페이지 수를 계산합니다. 3. 표시된 페이지 번호 배열을 동적으로 생성합니다. 4. 페이지 번호를 처리하고 이벤트를 클릭하고 부모 구성 요소로 전달하십시오. 5. 스타일과 상호 작용 세부 사항을 추가하십시오. 소품을 통해 데이터를 수신하고 기본값을 설정하고, 계산 된 속성을 사용하여 총 페이지 수를 계산하고, 방법을 사용하여 현재 표시된 페이지 번호 배열을 생성하고, 템플릿에서 렌더링 버튼을 생성하고, 클릭 클릭 이벤트를 바인드하여 현재 페이지 이벤트를 트리거하고, 현재 페이지 번호를 통해 이벤트를 듣고, 현재 페이지 번호를 통해 CSS를 통해 현재 페이지 번호를 강조하여 사용자 경험을 향상시킵니다.
VUE를 사용하여 백엔드 관리 시스템 또는 컨텐츠 디스플레이 플랫폼과 같은 페이징 기능이 필요한 프로젝트를 개발하는 경우 재사용 가능한 페이징 구성 요소를 구현해야합니다. 여기서 우리는 몇 가지 핵심 요점에 대해 간단히 이야기하고 Vue Pagination 구성 요소의 기본이지만 실용적인 예를 제공합니다.

기본 구조 및 데이터 준비
구성 요소를 작성하기 전에 필요한 데이터를 명확히하십시오.
- 현재 페이지 번호 (현재 페이지)
- TOLITEMS
- 페이지 당 표시되는 조각 수 (Pagesize)
- 선택 사항 : 표시 할 최대 페이지 번호 (예 : 표시 할 최대 5 페이지 번호)
이를 소품으로 또는 상위 구성 요소로 전달할 수 있습니다. 예를 들어:

소품 : { 총 : {유형 : 숫자, 필수 : true}, pagesize : {type : number, default : 10}, CurrentPage : {유형 : 번호, 기본값 : 1} }
그런 다음 다음을 기반으로 총 페이지 수를 계산하십시오.
계산 : { TotalPages () { Return Math.ceil (this.total / this.pagesize) } }
페이지 번호 렌더링 버튼
일반적인 관행은 현재 페이지의 왼쪽과 오른쪽에 하나 또는 두 페이지 숫자 만 표시하여 너무 많은 버튼을 피하는 것입니다. 예를 들어, 현재 5 페이지에있는 경우 최대 5 개의 버튼이 표시되면 3, 4, 5, 6 및 7이 표시되어야합니다.

한 가지 방법으로 표시 할 페이지 번호를 생성 할 수 있습니다.
방법 : { getPagenumbers () { const maxbuttons = 5 const pages = [] Const Half = Math.floor (Maxbuttons / 2) start = math.max (1, this.currentpage- 절반) end = math.min (this.totalpages, start maxbuttons -1) // 끝 근처에있는 경우 시작점을 앞으로 조정합니다. start = math.max (1, 끝 -Maxbuttons 1) } for (i = start; i <= end; i) { pages.push (i) } 반환 페이지 } }
이렇게하면 템플릿에서 동적 페이지 번호 버튼을 렌더링 할 수 있습니다.
페이지 번호 클릭 및 이벤트 배송을 처리합니다
사용자가 페이지 번호를 클릭하면 $emit
통해 새 페이지 번호 값을 부모 구성 요소에 전달하고 데이터 업데이트를 처리해야합니다.
<div class = "Pagination"> <button @click = "$ emit ( 'update : current-page', 1)": disabled = "currentpage === 1"> home </button> <버튼 v-for = "pagenumbers의 페이지" : key = "page" @click = "$ emit ( 'update : current-page', page)" " : class = "{active : currentPage === page}"> {{page}} </버튼> <button @click = "$ emit ( 'update : current-page', totalpages)": disabled = "currentPage === TotalPages"> 마지막 페이지 </button> </div>
부모 구성 요소 에서이 페이징 구성 요소를 사용하는 경우 다음과 같이 바인딩 할 수 있습니다.
<페이지 매김 : Total = "100" : current-page = "currentpage" @update : current-page = "currentpage = $ event" />
스타일 및 상호 작용 세부 사항
- 현재
.active
에 하이라이트 스타일을 추가하는 것이 매우 일반적입니다. - 유효하지 않은 작업을 피하기 위해 "이전 페이지"또는 "다음 페이지"버튼을 추가 할 수도 있습니다.
- 페이지 번호가 너무 많으면 타원 (…)을 추가하여 중간에 숨겨진 페이지 번호가 있음을 나타낼 수도 있지만 조금 더 복잡합니다.
- 실수로 터치하지 않도록 버튼 수를 단순화하는 것이 좋습니다.
기본적으로 그게 다야. 간단한 페이징 구성 요소는 너무 복잡 할 필요는 없지만 명확한 논리와 합리적인 상호 작용을 갖는 것은 매우 실용적입니다.
위 내용은 Vue의 Pagination 구성 요소의 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undress AI Tool
무료로 이미지를 벗다

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

이 기사는 VUE 개발자 및 학습자를위한 일련의 최상위 완제품 리소스 웹 사이트를 선택했습니다. 이러한 플랫폼을 통해 온라인으로 온라인으로 대규모 고품질 Vue 완전한 프로젝트를 탐색, 학습 및 재사용 할 수 있으므로 개발 기술과 프로젝트 실습 기능을 빠르게 향상시킬 수 있습니다.

VUE 구성 요소의 수명주기 후크는 특정 단계에서 코드를 실행하는 데 사용됩니다. 1. 생성 : 구성 요소가 생성 된 직후에 호출되어 데이터를 초기화하는 데 적합합니다. 2.mounted : 구성 요소가 DOM에 장착 된 후 호출되어 DOM을 작동하거나 외부 자원을로드하는 데 적합합니다. 3. 업데이트 : 데이터 업데이트로 구성 요소가 재 렌더링 될 때 호출되어 데이터 변경에 응답하는 데 적합합니다. 4. BeforeUnmount : 구성 요소가 제거되기 전에 호출되어 메모리 누출을 방지하기 위해 이벤트 청취 또는 타이머를 청소하는 데 적합합니다. 이 후크는 개발자가 구성 요소 동작을 정확하게 제어하고 성능을 최적화하는 데 도움이됩니다.

vuerouter를 설치하는 단계는 다음과 같습니다. 1. 프로젝트가 vue3를 기반으로 작성되었는지 확인하고 package.json에서 vue 버전을 확인하십시오. 2. 종속성을 설치하려면 터미널에서 NPMINSTALLVUE-ROUTER@또는 YARNADDVUE-ROUTER@4를 실행합니다. 3. router.js 파일을 만들고 라우팅 테이블을 구성하고 Createrouter 및 CreateWebhistory를 사용하여 라우팅 인스턴스를 초기화합니다. 4. 라우팅 인스턴스를 main.js에 소개하고 마운트하여 응용 프로그램에 소개하고 마운트합니다. 5. 페이지를 내비게이션에 포함 시켜서 사용해야하며 배포 중에 기록 모드를 지원하도록 서버를 구성해야합니다.

렌더링 차단 CSS는 다운로드 및 처리가 완료되기 전에 브라우저가 웹 페이지 렌더링을 차단하는 스타일 시트를 나타냅니다. 브라우저가 웹 페이지를로드하면 HTML을 구문 분석하고 DOM (Document Object Model)을 구축해야합니다. 태그가 발생하면 CSS 파일이 완전히로드되고 구문 분석 될 때까지 렌더링이 일시 중지되어 "렌더 차단"이라고합니다. 1. 임계 CSS를 인라인으로 인라인 : 첫 번째 화면 내용에 필요한 CSS를 추출하여 HTML에 직접 포함시킵니다. 2. 게으른 로딩 비 약한 CSS : JavaScript Lazy Loading 기술을 사용하여 초기 페이지 렌더링 후 중요하지 않은 CSS를로드합니다. 3. CSS를 패키지로 분할 : 필요한 스타일을 먼저 제공하면 나머지는 나중에로드됩니다. 4. 미디어 속성 사용 : 미디어 속성을 통해 특정 스타일 시트를 조건부로드합니다.

vue.js에서 mixin을 선언하려면 구성 요소의 ExportDefault {}에서 Mixins 옵션을 사용해야합니다. 특정 단계는 다음과 같습니다. 1. 데이터, 방법, 수명주기 후크 등을 포함하는 믹스 객체를 정의합니다. 2. Mixins를 통해이를 소개합니다. [mixin] 구성 요소의 인라인 정의를 지원하거나 파일에서 가져 오기; 3. 다중 믹스 인은 동시에 사용될 수 있으며, 믹스 인의 순서는 병합의 우선 순위에 영향을 미치며, 이후의 믹스 인과 성분의 특성이 선호됩니다. 4. 이름 지정 충돌에주의를 기울이면 구성 요소 속성은 Mixin에서 동일한 이름의 속성을 덮어 쓰고 수명주기 후크가 먼저 믹스 인 다음 구성 요소를 실행합니다.

재사용 가능한 VUE 페이징 구성 요소를 구현하려면 다음과 같은 주요 포인트를 명확히해야합니다. 1. 총 라인 수, 페이지 당 라인 수 및 현재 페이지 번호를 포함한 소품을 정의합니다. 2. 총 페이지 수를 계산합니다. 3. 표시된 페이지 번호 배열을 동적으로 생성합니다. 4. 페이지 번호를 처리하고 이벤트를 클릭하고 부모 구성 요소로 전달하십시오. 5. 스타일과 상호 작용 세부 사항을 추가하십시오. 소품을 통해 데이터를 수신하고 기본값을 설정하고, 계산 된 속성을 사용하여 총 페이지 수를 계산하고, 방법을 사용하여 현재 표시된 페이지 번호 배열을 생성하고, 템플릿에서 렌더링 버튼을 생성하고, 클릭 클릭 이벤트를 바인드하여 현재 페이지 이벤트를 트리거하고, 현재 페이지 번호를 통해 이벤트를 듣고, 현재 페이지 번호를 통해 CSS를 통해 현재 페이지 번호를 강조하여 사용자 경험을 향상시킵니다.

VUE 사용자 정의 구성 요소에서 V- 모델을 활성화하려면 다음을 필요로합니다. 1. ModelValueProp을 선언합니다. 2. 부모 구성 요소 데이터가 $ emit ( 'update : modelValue')를 통해 변경됩니다. 예를 들어, 입력에서 ModelValue를 바인딩하고 이벤트를 트리거하십시오. 여러 V- 모드 (vue3)를 지원 해야하는 경우 v-model : 제목과 같은 명명 방법을 사용하고 해당 소품 및 방출을 선언 할 수 있습니다. 변수를 내부적으로 유지할 때 직접 수정 소품을 피하기 위해 데이터를 사용하거나 중간 계층 동기화를 위해 계산하는 것이 좋습니다.

VUE 개발자의 경우 고품질 완성 된 프로젝트 또는 템플릿은 새로운 프로젝트를 신속하게 시작하고 모범 사례를 배우는 강력한 도구입니다. 이 기사에서는 백엔드 관리 시스템, UI 구성 요소 라이브러리 또는 특정 비즈니스 시나리오를위한 템플릿이든 효율적으로 필요한 프론트 엔드 솔루션을 찾을 수 있도록 여러 Top Vue 무료 완제품 리소스 포털 및 웹 사이트 탐색을 선택했습니다.
