带有分页的下一页链接
Posted
技术标签:
【中文标题】带有分页的下一页链接【英文标题】:Next page links with pagination 【发布时间】:2021-03-12 21:26:53 【问题描述】:我已经在我的控制器文件中实现了分页
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 个。我是否必须计算控制器内的页面数并将其作为变量传递给我的 ejs 并显示正确数量的链接?
我只是想确保我在考虑缩放的情况下采取正确的方法,因为我对此相对较新!任何帮助表示赞赏
【问题讨论】:
【参考方案1】:您已经在某个对象内退回了产品,这很好。您还可以使用它来返回计数:
res.render("products",
productsList: prod,
count: await Product.count()
);
除以“分页”是页数。
【讨论】:
除以 Math.ceil() 以防其他人偶然发现这个问题 :) 感谢您的回答!以上是关于带有分页的下一页链接的主要内容,如果未能解决你的问题,请参考以下文章