对于DeprecationWarning添加的这里,它似乎说cursor()是stream()的替代物,然而,有些功能似乎已经被抛在后面。
例如,这个不推荐的代码将具有“精益”文档,而这些文档不是mongoose.Document的实例。
Cat
.find({ }).lean()
.stream()
.on('data', function (data) {
var value = data instanceof mongoose.Document;
console.log('lean().stream() data instanceof mongoose.Document', value);
})
.on('end', function () { });即使在使用lean()时,这段代码也会有猫鼬文档:
Cat
.find({ }).lean()
.cursor()
.on('data', function (data) {
var value = data instanceof mongoose.Document;
console.log('lean().cursor() data instanceof mongoose.Document', value);
})
.on('end', function () {});这是超级奇怪的地方,因为在进行此更改时,它们的源代码看起来是相同的:
是否有适当的方法可以通过cursor()实现这一点,或者我找到了一个bug?(预先谢谢;)
发布于 2016-06-21 19:09:17
经过研究(感谢JohnnyHK的评论),我发现它似乎没有在cursor()中实现,所以我已经请求解决这个问题,https://github.com/Automattic/mongoose/pull/4255
https://stackoverflow.com/questions/37934739
复制相似问题