MongoDb 分页逻辑
🌙
手机阅读
本文目录结构
node 的分页逻辑
var User = require("../models/User")
先获取总数,做一些基础限制
//用户管理
router.get("/user", function (req, res, next) {
var queryPage=req.query.page;// /admin/user?page=2
var page, //当前页数
skip; //前面忽略的条数
varpages, // 合计总页数
count; //总条数
varlimit=5;//每页显示条数
if (typeofNumber(queryPage) !=="number") {
page=1;
} else {
page=Number(queryPage) ||1;
}
User.count().then(function (count) {
return count;//数据库查询总条数
}).then(function (count) {
count=count;
pages=Math.ceil(count/limit);
//paga 不大于 pages
page=Math.min(pages, page);
//page 不小于 1
page=Math.max(page, 1);
skip= (page-1) *limit;
User.find().limit(limit).skip(skip).then(function (data) {
//交给admin/user_index 页面展示,并且数据是 第二个参数
res.render(‘admin/user_index’, {
users:data,
count:count,
limit:limit,
pages:pages,
page:page
});
})
})
})