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
                });
            })
        })
    })

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了