为了账号安全,请及时绑定邮箱和手机立即绑定

node中Promise也被嵌套了

node中Promise也被嵌套了

当年话下 2018-11-13 14:39:59
1.假如有两个mongodb集合,一个是users,一个是posts,在posts列表中展示对应的users信息,常规异步处理嵌套太多.就使用Promise来解决,发现,promise解决时也有一个问题.2. 解决代码如下//封装查询一条函数findOneData = function(db, colName, data) {    return new Promise(function(reslove, reject) {        db.collection(colName).find(data).toArray(function(err, data) {            if (err) {                console.log("数据查询错误" + err);                reject(err);                return;            }            reslove({ db: db, data: data });        });    });};db_conn()    .then(function(db) {        return findOneData(db, "test", {});    })    .then(function(data) {        console.log(data);    });这样的方法是否正确?貌似是解决了,但是总感觉哪里不对,,,
查看完整描述

1 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

db_conn()

    .then(db => findOneData(db, "test", {}))

    .then(data => console.log(data));

这样看起来是不是要顺眼些?

(async function() {

    const db = await db_conn();

    const data = await findOneData(db, "test", {});

    console.log(data);

})();

这样是不是更顺眼些?

查看完整回答
反对 回复 2018-12-18
  • 1 回答
  • 0 关注
  • 441 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信