CoreUI PRO Component

To use this component you must have a CoreUI PRO license. Buy the CoreUI PRO and get access to all PRO components, features, templates, and dedicated support.

Documentation and examples for showing smart pagination to indicate a series of related content exists across multiple pages.

Other frameworks

CoreUI components are available as native Angular, Bootstrap (Vanilla JS), and React components. To learn more please visit the following pages.

Overview

React smart pagination component consists of button-like styled links, that are arranged side by side in a horizontal list.

We use a large block of connected links for our pagination, making links hard to miss and easily scalable—all while providing large hit areas. SmartPagination is built with list HTML elements so screen readers can announce the number of available links. SmartPagination also use a wrapping <nav> element to identify it as a navigation section to screen readers and other assistive technologies.

In addition, as pages likely have more than one such navigation section, SmartPagination provide a descriptive aria-label for the <nav> to reflect its purpose. For example, if the pagination component is used to navigate between a set of search results, an appropriate label could be aria-label="Search results pages".???

<CSmartPagination
  :activePage="6"
  :pages="pages"
/>

Sizing

Fancy larger or smaller pagination? Add size="lg" or size="sm" for additional sizes.

<CSmartPagination
  :activePage="6"
  :pages="10"
  size="lg"
/>
<CSmartPagination
  :activePage="6"
  :pages="10"
  size="sm"
/>

Alignment

Change the alignment of pagination components with align="start", align="center" or align="end".

<CSmartPagination
  :activePage="6"
  :pages="10"
  align="center"
/>
<CSmartPagination
  :activePage="6"
  :pages="10"
  align="end"
/>

API

CSmartPagination

import { CSmartPagination } from '@coreui/vue-pro'
// or
import CSmartPagination from '@coreui/vue-pro/src/components/pagination/CSmartPagination'

Props

Prop nameDescriptionTypeValuesDefault
alignHorizontall align
@default 'start'
string-'start'
active-pageCurrent page number
@default 1
number-1
arrowsShow/hide arrows
@default true
boolean-true
dotsShow/hide dots
@default true
boolean-true
double-arrowsShow double arrows buttons
@default true
boolean-true
first-buttonThe content of 'firstButton' button
@default '«'
string-'«'
last-buttonThe content of 'lastButton' button
@default '»'
string-'»'
limitMaximum items number
@default 5
number-5
next-buttonThe content of 'nextButton' button
@default '›'
string-'›'
pagesNumber of pagesnumber-1000
previous-buttonThe content of 'previousButton' button
@default '‹'
string-'‹'
sizeSize of pagination, valid values: 'sm', 'lg'string--

Events

Event nameDescriptionProperties
active-page-changeOn active page change callback.