# Pagination 分页
### 介绍
当数据量较多时,采用分页的形式分隔长列表。
### 安装
``` javascript
import { createApp } from 'vue';
import { Pagination,Icon } from '@nutui/nutui';
const app = createApp();
app.use(Pagination).use(Icon);
```
### 基础用法
通过 v-model 来绑定当前页码。
``` html
```
``` javascript
export default {
setup() {
const state = reactive({
currentPage: 1,
currentPage1: 1,
currentPage2: 1,
currentPage3: 1
});
const pageChange = (value) => {
console.log(value);
};
return {
...toRefs(state),
pageChange
};
}
};
```
### 简单模式
将 mode 设置为 simple 来切换到简单模式,此时分页器不会展示具体的页码按钮。
``` html
```
### 显示省略号
设置 force-ellipses 后会展示省略号按钮,点击后可以快速跳转。
``` html
```
### 自定义按钮
设置 force-ellipses 后会展示省略号按钮,点击后可以快速跳转。
``` html
{{ item.number == 3 ? 'hot' : item.text }}
```
## API
### Props
| 参数 | 说明 | 类型 | 默认值 |
|----------------|--------------------------|---------------|-------------------|
| v-model | 当前页码 | Number | 1 |
| mode | 显示模式,可选值为 simple | String | multi |
| prev-text | 上一页按钮文字 | String | 上一页 |
| next-text | 下一页按钮文字 | String | 下一页 |
| page-count | 总页数 | String,Number | 传入/根据页数计算 |
| total-items | 总记录数 | String,Number | 0 |
| items-per-page | 每页记录数 | String,Number | 10 |
| show-page-size | 显示的页码个数 | String,Number | 5 |
| force-ellipses | 是否显示省略号 | Boolean | false |
### Events
| 事件名 | 说明 | 回调参数 |
|--------|----------------|----------|
| change | 页码改变时触发 | value |
### Slots
| 名称 | 描述 | 参数 |
|-----------|----------------------|------|
| prev-text | 自定义上一页按钮内容 | - |
| next-text | 自定义下一页按钮内容 | - |
| page | 自定义页码 | - |