如何计算Node-MongoDB-native stream()返回的文档?

时间:2013-07-26 19:19:05

标签: node.js mongodb stream

stream()中有NodeJS MongoDB native driver个文档时,如何确定将返回的文档总数?例如,用于报告查询进度。

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

1 个答案:

答案 0 :(得分: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);
});