我是JS的新手,正在尝试构建REST API。 我有一个文档数据库,并且实现了一种搜索方法,可以使用索引在每个字段中进行搜索。现在,我想启用某种分页功能,所以我使用了limit()和skip()。 我的问题是:按照惯例,页面应该以1还是0开头?我的意思是说:
let userArray = await User.find({$text: {$search:keyword}})
.select(["-password", "-__v"])
.limit(perPage)
.skip(perPage*page)
如果我希望每页和第二页有3个项目,则网址应为:
url?limit=3&page=1
或
url?limit=3&page=2
很抱歉,如果您已经问了这个问题并且很笨,但是我尝试编写尽可能简洁的代码。
答案 0 :(得分:0)
理想情况下,页面从1开始。将页面0作为起始页面并没有多大区别,但其他选项则更加常规和整洁。
也可以跳过和限制,您可以执行以下操作-
跳过=每页*(第1页)
限制=每页
例如,每页为3,
第1页:
跳过= 3 *(1-1)= 0,跳过第1页的0个项目
第2页:
跳过= 3 *(2-1)= 3,从第2页跳过3个项目,依此类推