如何从mongodb获取所有文档?

问题描述:

如何使用nodejs SDK从mongodb获取所有文档?我尝试了以下方法获取所有文档,但无法获取任何内容,但插入工作正常。如何从mongodb获取所有文档?

// Connection URL 
    var url = config.mongodbConnectionString; 
    var db: any; 

    // Use connect method to connect to the Server 
    MongoClient.connect(url, function (err: any, database: any) { 
     assert.equal(null, err); 
     console.log("Connected correctly to server"); 
     db = database; 
    });  

export class MongodbProvider implements IDbProvider {  

    public getMenus(): any { 
    var menus: any = []; 
    try { 

     db.open(function (err, db) { 
      var cursor = db.collection('menus').find(function (err, cursor) { 
       cursor.each(function (err, doc) { 
        console.log(doc); 
        menus.push(doc); 
       }); 
      }); 
     }); 
    } 
    catch (err) { 
     console.log(err); 
    } 
    return menus; 
} 
} 

你能帮我吗?

+0

的[?我如何返回从一个异步调用的响应(可能的复制http://*.com/questions/14220321/how-do-i-return-the-response-从-AN-异步呼叫) –

find的第一个参数是一个过滤器。要获取所有内容,它应该是一个空文档。喜欢的东西:

var cursor = db.collection('menus').find({}, function (err, cursor) {