Ich habe die PAGED -Klasse in Plugin/paginate.js eingelegt
Die Codekopie lautet wie folgt:
/**
* Pagination Plugin -Klasse (fehlende Anzeigezahl pro Seite, Listrows werden morgen geschrieben)
* @param Seite {Nummer} Aktuelle Seite
* @param pageSize {Nummer} Anzahl der Datensätze pro Seite
* @param Total {number} Gesamtdatensätze
* @Constructor
*/
Funktion paginate (Seite, pageSize, insgesamt) {
if (! Seite || Seite <1) {
Seite = 1;
}
if (! pageSize || pageSize <1) {
pageSize = 20;
}
if (! Total || Gesamt <0) {
insgesamt = 0;
}
this.PageSize = pageSize;
this.total = total;
if (this.total%this.pageSize === 0) {
this.maxpage = parseInt (this.total/this.pageSize);
}anders{
this.maxPage = parseInt (this.total /this.pageSize) + 1;
}
if (Seite> this.maxPage) {
this.page = this.maxPage;
}anders{
this.page = Seite;
}
}
/*
* Die aktuelle Anzahl der Einträge
*/
Paginate.prototype.first = function () {
var first = (this.page-1)*this.pageSize;
if (first> this.total) {
return (this.maxPage-1)*this.pageSize;
}
zuerst zurückkehren;
}
/*
* Die größte Anzahl von Einträgen auf der aktuellen Seite
*/
Paginate.prototype.last = function () {
var last = this.First ()+this.pageSize;
if (last> this.total) {
kehre dies zurück.
}
Last zurückkehren;
}
/**
* Vorherige Seite
* @returns {number}
*/
Paginate.prototype.prev = function () {
if (this.page <= 1) {
false zurückgeben;
}
zurück diese.page-1;
}
/**
* Nächste Seite
* @returns {*}
*/
Paginate.prototype.next = function () {
if (this.page> = this.maxPage) {
false zurückgeben;
}
return (parseInt (this.page) +1);
}
module.exports = paginate;
Beispiel verwenden
Die Codekopie lautet wie folgt:
var paginate = required ("../ plugin/paginate");
var q = req.query.q;
var paginate = neuer paginat (q, 10, 185);
var page = page.page; // aktuelle Seitenanzahl
var First = paginate.First (); // das aktuelle erste Element
var last = paginate.last (); // die aktuelle maximale Anzahl der Einträge
var maxpage = paginate.maxPage; // Gesamtzahl der Seiten
var pageSize = paginate.pageSize; // Anzahl der Anzeige pro Seite
var total = paginate.total; // Gesamtzahl der Datensätze
var prev = paginate.prev (); // vorher
var next = paginate.next (); // als nächstes
res.json ({Seite: Seite, zuerst: zuerst, letztes: letztes, maxPage: maxpage, pageSize: pageSize, insgesamt: insgesamt, prev: prev: Weiter: Weiter})