我在用猫鼬3.8。我需要提取100个文档,执行回调函数,然后提取下100个文档并执行相同的操作。
我以为.batchSize()
也会做同样的事情,但我正在一次获取所有数据。
我必须使用limit
还是offset
?如果是的话,有人能举个恰当的例子吗?
如果可以用batchSize
完成,为什么对我不起作用?
MySchema.find({}).batchSize(20).exec(function(err,docs)
{
console.log(docs.length)
});
我以为它每次能印20张,但它印的全数。
最佳答案
这里有你需要的信息。
你可以这么做,
var pagesize=100;
MySchema.find().skip(pagesize*(n-1)).limit(pagesize);
其中n是您在请求中接收到的参数,这是客户端希望接收的页码。