Я положил класс на странице в плагин/paginate.js
Кода -копия выглядит следующим образом:
/**
* Класс плагинов страниц (отсутствует подсчет отображений на страницу, Listrows будет написан завтра)
* @param page {number} текущая страница
* @param PageSize {номер} Номер записей на страницу
* @param total {номер} общие записи
* @constructor
*/
Функция лиц (Page, PageSize, Total) {
if (! Page || Page <1) {
Page = 1;
}
if (! pagesize || pagesize <1) {
PageSize = 20;
}
if (! total || total <0) {
Итого = 0;
}
this.pageize = pagesize;
this.total = total;
if (this.total%this.pagesize === 0) {
this.maxpage = parseint (this.total/this.pagesize);
}еще{
this.maxpage = parseint (this.total /this.pagesize) + 1;
}
if (page> this.maxpage) {
this.page = this.maxpage;
}еще{
this.page = page;
}
}
/*
* Текущее количество записей
*/
Paginate.prototype.first = function () {
var first = (this.page-1)*this.pagesize;
if (First> this.total) {
return (this.maxpage-1)*this.pagesize;
}
вернуться первым;
}
/*
* Наибольшее количество записей на текущей странице
*/
Paginate.prototype.last = function () {
var last = this.first ()+this.pagesize;
if (последний> this.total) {
вернуть это.total;
}
вернуться в последний раз;
}
/**
* Предыдущая страница
* @returns {номер}
*/
Paginate.prototype.prev = function () {
if (this.page <= 1) {
вернуть ложь;
}
вернуть это. Page-1;
}
/**
* Следующая страница
* @returns {*}
*/
Paginate.prototype.next = function () {
if (this.page> = this.maxpage) {
вернуть ложь;
}
return (parseint (this.page) +1);
}
module.exports = paginate;
Используйте пример
Кода -копия выглядит следующим образом:
var paginate = require ("../ плагин/лиц");
var q = req.query.q;
var paginate = new Paginate (Q, 10, 185);
var page = page.page; // текущее количество страниц
var First = paginate.first (); // текущий первый элемент
var last = paginate.last (); // текущее максимальное количество записей
var maxpage = paginate.maxpage; // Общее количество страниц
var pagesize = paginate.pagesize; // количество отображения на страницу
var total = paginate.total; // Общее количество записей
var prev = paginate.prev (); // предыдущий
var next = paginate.next (); // Далее
res.json ({Page: Page, First: First, Last: Last, MaxPage: MaxPage, PageSize: PageSize, Total: Total, Prev: Prev, Next: Next})