2.0.1 • Published 5 years ago
pagination-store v2.0.1
pagination-store
生成 pagination 数据对象
安装
npm install --save pagination-store
types
interface PaginationOptions {
total: number;
current?: number;
pageSize?: number;
pageRange?: number;
}
interface PData {
page: number | null;
isCurrent?: boolean;
isPreviousMore?: boolean;
isNextMore?: boolean;
}PaginationStore
构造函数
new PaginationStore({ total: 100, current: 1, pageSize: 10, pageRange: 5 })
或
getPageList({ total: 100, current: 1, pageSize: 10, pageRange: 5 }): PData[]
属性
total总数current当前页 默认为 1pageSize页码大小 默认为 10pageRange分页按钮显示的最大数 默认为 5
方法
getCurrentList(): PData[]获取当前分页的列表。该方法接收一个函数作为结果項进行处理
getPageTotal()获取页面总数isFirstPage(number)判断是否第一页isLastPage(number)作用同上getNext()获取下一页的页码,如果不存在则返回 nullgetPrevious()作用同上previous()翻页,上一页,如果失败则返回 falsenext()翻页,下一页,如果失败则返回 false
getPageList
eg:
getPageList({ total: 100, current: 1, pageSize: 10, pageRange: 5 })
示例
import { PaginationStore, getPageList } from "pagination-store";
const pagination = new PaginationStore({
total: 161,
pageSize: 10,
pageRange: 5,
});
console.log(pagination.getCurrentList());
pagination.current = 8;
console.log(pagination.getCurrentList());
pagination.next();
console.log(pagination.getCurrentList());//getCurrentList() 返回示例
[ { page: 1, isCurrent: false },
{ page: null, isPreviousMore: true },
{ page: 7, isCurrent: false },
{ page: 8, isCurrent: false },
{ page: 9, isCurrent: true },
{ page: 10, isCurrent: false },
{ page: 11, isCurrent: false },
{ page: null, isNextMore: true },
{ page: 17, isCurrent: false } ]