MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como usar a promessa do mangusto - mongo


Na versão atual do Mongoose, o exec() retorna uma promessa, então você pode fazer o seguinte:
exports.process = function(r) {
    return Content.find({route: r}).exec();
}

Então, quando você quiser obter os dados, você deve torná-lo assíncrono:
app.use(function(req, res, next) {
     res.local('myStuff', myLib.process(req.path));
     res.local('myStuff')
         .then(function(doc) {  // <- this is the Promise interface.
             console.log(doc);
             next();
         }, function(err) {
             // handle error here.
         });
});

Para mais informações sobre promessas, há um artigo maravilhoso que li recentemente:http://spion.github.io/posts/why-i-am-switching-to-promises.html