0

当我在NodeJS MongoDB 本机驱动程序中stream()文档时,如何确定将返回的文档总数?例如,对于报告查询进度很有用。

var stream = collection.find(query, fields, options).stream()
    .on("data", onData)
    .on("end", onEnd)
    .on("error", onError);
4

1 回答 1

1

您可以先尝试调用 collection.count。

collection.count(function(err, total) {
  var count = 0;
  var progress = 0;
  function onData() {
    progress = (++count / total) * 100;
  }

  var stream = collection.find(query, fields, options).stream()
    .on("data", onData)
    .on("end", onEnd)
    .on("error", onError);
});
于 2013-07-26T19:37:47.493 回答