Coloquei a classe paginada no plugin/paginate.js
A cópia do código é a seguinte:
/**
* Classe de plug -in de paginação (contagem de exibição ausente por página, os Listrows serão escritos amanhã)
* @param página {número} página atual
* @param pagageSize {número} Número de registros por página
* @param total {número} registros totais
* @Constructor
*/
função paginate (página, PageSize, total) {
if (! página || página <1) {
página = 1;
}
if (! PageSize || PageSize <1) {
PageSize = 20;
}
if (! total || total <0) {
total = 0;
}
this.Pagesize = PageSize;
this.Total = Total;
if (this.total%this.pagesize === 0) {
this.maxpage = parseint (this.total/this.pagesize);
}outro{
this.maxpage = parseint (this.total /this.pagesize) + 1;
}
if (página> this.maxpage) {
this.page = this.maxpage;
}outro{
this.page = página;
}
}
/*
* O número atual de entradas
*/
Paginate.prototype.first = function () {
var primeiro = (this.page-1)*this.pagesize;
if (primeiro> this.total) {
return (this.maxpage-1)*this.pagesize;
}
retornar primeiro;
}
/*
* O maior número de entradas na página atual
*/
Paginate.prototype.last = function () {
var last = this.first ()+this.pagesize;
if (last> this.total) {
retornar este.Total;
}
retornar por último;
}
/**
* Página anterior
* @returns {número}
*/
Paginate.prototype.prev = function () {
if (this.page <= 1) {
retornar falso;
}
retornar this.page-1;
}
/**
* Próxima página
* @returns {*}
*/
Paginate.prototype.Next = function () {
if (this.page> = this.maxpage) {
retornar falso;
}
return (parseint (this.page) +1);
}
module.exports = paginate;
Use exemplo
A cópia do código é a seguinte:
var paginate = requer ("../ plugin/paginate");
var q = req.query.q;
var paginate = novo paginato (Q, 10, 185);
var página = página.page; // contagem atual de páginas
var primeiro = paginate.first (); // o primeiro item atual
var last = paginate.last (); // o número máximo atual de entradas
var maxpage = paginate.maxpage; // Número total de páginas
var paagesize = paginate.pagesize; // Número de exibição por página
var total = paginate.total; // Número total de registros
var prev = paginate.prev (); // anterior
var próximo = paginate.Next (); // Próximo
Res.json ({página: página, primeiro: primeiro, último: last, maxpage: maxpage, pagageSize: PageSize, Total: Total, Anterior: Anterior, Próximo: Next})