Mongodb nodejs的驱动程序skip()不起作用

以下代码总是返回相同的文档。 req.query.skip保持递增10,仍然打印相同的一组文档。 还有1000多个文件。

Collection.find({}).skip(req.query.skip).limit(10); var imageIdArray = []; cursor.each(function(err, item) { if (item == null) { // end console.log(imageIdArray); res.write(JSON.stringify(imageIdArray)); res.end(); } else { imageIdArray.push(item._id); } }); 

skip()函数看起来不起作用。

它返回相同的文件,因为skip需要一个数字作为参数,而req.query.skip值是一个string,所以你首先需要将其parsing为整数,然后将其作为skipparameter passing给它:

 var skip = parseInt(req.query.skip), cursor = Collection.find({}).skip(skip).limit(10); var imageIdArray = []; cursor.each(function(err, item) { if (item == null) { // end console.log(imageIdArray); res.write(JSON.stringify(imageIdArray)); res.end(); } else { imageIdArray.push(item._id); } });