首頁 >web前端 >js教程 >nodejs分頁類別程式碼分享_node.js

nodejs分頁類別程式碼分享_node.js

WBOY
WBOY原創
2016-05-16 16:44:071525瀏覽

分頁類,我放在 plugin/Paginate.js

複製程式碼 程式碼如下:

/**
 * 分頁外掛類別(缺少每頁的顯示數,listrows明天寫)
 * @param page {Number} 當前頁
 * @param pagesize {Number} 每頁記錄數
 * @ param total {Number} 總記錄數
 * @constructor
 */


/**
 * 上一頁
 * @returns {number}
 */
*/    if(!page || page         page = 1;
    }
>        pagesize = 20;
    }
    if(!total || total    size;
    this.total = total;
    if(this.total%this.pagesize ===0){
        this.maxpage = parseInt(this.total/this.pagesize); = parseInt(this.total /this.pagesize) 1;
    }
    if(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;
  ){
        return this.total;
    }
    return last;
}

/**
 * 下一頁
 * @returns {*}

 */

Paginate.prototype.prev = function(){
    if(this.page     return this.page-1;
}

/***/
Paginate.prototype.next = function(){
    if(this.page >= this.maxpage){
   🎜>    return (parseInt(this.page) 1);
}

module.exports = Paginate;




使用範例





複製程式碼

程式碼如下:

var Paginate = require("../plugin/Paginate ");

var q = req.query.q;

var paginate = new Paginate(q, 10, 185);var page = paginate.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} )


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn