水线流回调不可达



我无法使waterline的stream工作。我正在跟踪流文档。

我使用stream正确吗?

MyModel.stream({ isSubscribed: true }).populate("user").eachBatch(10, function(err, records){
console.log("Code reached inside stream results")
})
// Output: Prints nothing

find函数工作得很好

MyModel.find({ isSubscribed: true }).populate("user").exec(function(err, records){
console.log("Found "+ records.length+ " records")
})
// Output: Prints "Found 12 records"

更新:这个问题似乎是特定于eachBatch功能。不确定具体是什么,但测试了eachRecord,确实有效。

await MyModel.stream({ isSubscribed: true }).populate("user").eachRecord(async function(record){
console.log("Code reached inside stream results")
})
// Output: Code reached inside stream results

水线stream文档没有帮助。在查看了流的水线代码后,我编辑了我的代码如下,它工作了,即eachBatch回调内部的代码现在是可访问的

MyModel.stream({ 
isSubscribed: true 
}).eachBatch(function(records, next){ 
console.log("Reachable!! Found records: ", records); 
next(); 
}).exec(function(err){
console.log("Done with stream query")
})

相关内容

  • 没有找到相关文章

最新更新