如何将异步的mongodb查询函数改造成Promise的形式?

最近在学习ES6的Promise,书上的例子我都能理解,不过却无法将其应用于实际开发中,有没有人可以以mongodb的异步查询为例,举例说明一下如何应用Promise呢?
示例代码如下:

function getOne(route,callback) {

        mongodb.open(function(err,db) {

            if (err) {

                mongodb.close();

                return callback(err);

            };

            db.collection('posts',function(err,collection) {

                if (err) {

                    mongodb.close();

                    return callback(err);

                };

                collection.findOne({

                    route:route,

                },function(err,doc) {

                    mongodb.close();

                    if (err) {

                        return callback(err);

                    };

                    if (doc){   

                        callback(null,doc); 

                    } else {    //if page not found

                        callback('404');

                    }

                    

                });

            });

        });

};

比如这段代码,如何将其改造成Promise形式呢?谢谢!

慕婉清6462132
浏览 1079回答 2
2回答

子衿沉夜

mongoDB 驱动原生支持返回 Promise
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MongoDB