Pagination分页模块
Pagination模块用来创建数据分页,支持自动分页和手动分页
前言
数据分页是减轻页面加载负担的一种常规手段,本分页模块支持两种模式,一是根据数据列表和每页条数渲染分页;二是通过确定的数据条数和每页条数手动渲染列表。
本分页模块支持多种展示方式,满足大多数场景需求。
简单使用
直接对节点应用ax-pagination
属性即可;参数content
用来设置数据源,默认1000,即内置1000条数据;参数count
设置每页条数,默认每页10条数据。
当然,这两个参数最终是需要用户自定义的。
- 输出
- HTML
使用id+new
的形式也是可以的。
- 输出
- HTML
- JS
-
-
-
new ax.Pagination('#demo01')
真实数据
可以给参数content
传一个真实的数组数据,那么将按该数组数据进行分页。
- 输出
- HTML
- JS
-
-
-
new ax.Pagination('#demo02',{ content:Array(1000).fill(null).map((k,i)=>i), })
渲染列表
模块默认不做列表渲染,如果已经有了真实数据,可以给参数listSel
传一个列表容器选择器,那么当页数据将渲染到该容器里。
- 输出
- HTML
- JS
-
-
-
new ax.Pagination('#demo03',{ content:Array(1000).fill(null).map((k,i)=>i), listSel:'#box03', })
手动渲染列表
如果希望手动渲染列表,可不填listSel
参数,而在located
事件中手动渲染列表。
- 输出
- HTML
- JS
-
-
-
new ax.Pagination('#demo32',{ content:1000, onLocated:function(resp){ //resp={current,data} let data = resp.data.map(k=>`${k.index}`), wrap = document.querySelector('#box32'), html=''; for(let k of data){ html += `<section>${k}</section>` } wrap.innerHTML=html; } })
基础配置
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
listSel | string | '' | 列表容器选择器 |
count | number | 10 | 每页显示的条目数 |
counts | string | '' | 可选的每页条目数,如:'10,20,30' |
current | number | 1 | 当前页码 |
size | 'sm' | 'md' | 'lg' | 'md' | 分页器尺寸 |
显示控制
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
expanded | boolean | false | 是否展开显示所有页码 |
visible | object | {edge:2,center:2} | 可见页码配置 |
align | 'left' | 'center' | 'right' | '' | '' | 分页器对齐方式 |
type | 'group' | 'plain' | '' | '' | 分页器样式类型 |
flexible | boolean | false | 是否启用弹性布局 |
layout | string | 'first|prev|pages|next|last' | 分页器结构布局 |
classes | string | '' | 自定义 CSS 类名 |
delay | number | 100 | 跳转防抖延迟(ms) |
内容配置
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
content | number | string | array | 1000 | 数据源,默认自带1000条数据 |
contType | 'total' | 'async'|'' | '' | 内容类型 |
contData | object | {} | 请求参数配置 |
ajax | object | {} | AJAX 请求配置 |
tplStr | string | '' | 模板字符串 |
tplEng | function | null | null | 模板引擎配置 |
DOM 结构
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
names | object | {main:'div',...} | 分页器各部分节点名称配置 |
等待函数
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
b4Locate | function | null | null | 页码跳转前等待 |
b4RenderList | function | null | null | 列表渲染前等待 |
事件回调
属性 | 类型 | 默认值 | 说明 |
---|---|---|---|
onLocated | function | null | null | 页码跳转完成回调 |
onGotCont | function | null | null | 内容获取完成回调 |
onToFirst | function | null | null | 跳转首页回调 |
onToLast | function | null | null | 跳转尾页回调 |
onExceeded | function | null | null | 页码超出范围回调 |
onRenderedList | function | null | null | 列表渲染完成回调 |
onRenderedPages | function | null | null | 页码渲染完成回调 |