Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 下一页带有分页的链接_Node.js_Mongodb_Mongoose_Pagination_Ejs - Fatal编程技术网

Node.js 下一页带有分页的链接

Node.js 下一页带有分页的链接,node.js,mongodb,mongoose,pagination,ejs,Node.js,Mongodb,Mongoose,Pagination,Ejs,我已经在控制器文件中实现了分页 exports.products = async (req, res) => { const pagination = req.query.pagination ? parseInt(req.query.pagination) : 5; const page = req.query.page ? parseInt(req.query.page) : 1; const prod = await Product.find({}) .skip(

我已经在控制器文件中实现了分页

exports.products = async (req, res) => {
  const pagination = req.query.pagination ? parseInt(req.query.pagination) : 5;
  const page = req.query.page ? parseInt(req.query.page) : 1;
  const prod = await Product.find({})
    .skip((page - 1) * pagination)
    .limit(pagination);
  res.render("products", {
    productsList: prod,
  });
};

上面的代码有效,我可以通过将URL从
/products?page=1
更改为
/products?page=2
等,每页访问5个结果。但是我还没有找到任何信息/教程,包括如何实现“下一页”链接。我的意思是,如果我有20个产品,并且希望每页显示5个产品,我如何确保底部的“下一页”链接不会超过4个。我是否必须计算控制器内的页数,并将其作为变量传递给我的EJ,并显示正确的链接量


我只是想确保我采取了正确的方法来实现这一点,因为我对这一点比较陌生!非常感谢您的帮助

很高兴您已将产品放在某个物体内归还。您还可以使用它返回计数:

res.render(“产品”{
产品列表:prod,
计数:等待产品计数({})
});
“分页”分隔的是页数。

除以Math.ceil()以防其他人碰到这个问题:)谢谢你的回答!