Node.js MongoSkin承诺查询不工作

Node.js MongoSkin承诺查询不工作,node.js,mongodb,mongoskin,Node.js,Mongodb,Mongoskin,上述代码在控制台中输出以下内容: var co = require('co'); var MongoClient = require('mongoskin').MongoClient; var db = MongoClient.connect('mongodb://localhost:27017/hellye'); var countries = db.collection('countries', { strict: true }); co(function* () { v

上述代码在控制台中输出以下内容:

var co = require('co');
var MongoClient = require('mongoskin').MongoClient;

var db = MongoClient.connect('mongodb://localhost:27017/hellye');
var countries = db.collection('countries', {
    strict: true
});

co(function* () {
    var doc =
        yield countries.find({
            country: 'scotland'
        }).limit(1);
    console.log('> 1');
    console.log(doc);
});

countries.find({
    country: 'scotland'
}).limit(1).next(function (err, doc) {
    console.log('> 2');
    console.log(doc);
});
第一个查询不起作用,这是为什么?文档说明它返回了一个承诺,所以它应该返回:

。最后需要toArray()

> 2
{ _id: 56b33957a345a53d4c15f6bf,
  country: 'scotland',
  primaryLanguage: 'english' }
var doc =
    yield countries.find({
        country: 'scotland'
    }).limit(1).toArray();