嵌套的Q.all nodejs

时间:2016-05-18 19:19:14

标签: javascript node.js

我正在研究Nodejs的承诺。 我有一个关于两个嵌套Q.all的情况的问题。

Q.all(promises1)
   .then(function(res1) {
        var promises2 = <METHOD THAT USE THE RES1>
        Q.all(promises2)
            .then(function(re2) {
                  ...
            })
   })    

问题是我需要第一个Q.all的结果。 promises1是多重保存功能,我需要保存在promises2中使用的多功能项目中的objectId。 我正在研究没有嵌套功能的承诺,我的问题是如何解决这个问题呢?

2 个答案:

答案 0 :(得分:0)

您可以在then函数中返回promise以继续链。另外我想要注意,节点支持内置的Promise API。

Promise.all(promises1)
    .then(res => {
        let promises2 = [];
        return Promise.all(promises2);
    })
    .then(res => {

    });

答案 1 :(得分:-1)

  

我该如何解决这个巢?

As always :-)您需要target <- c("first grade", "high school", "college") df[match(target, df$class),] 来自return回调的承诺,在这种情况下是您通过第二次then来电获得的承诺,然后是可以将您的第二个Q.all调用链接到外部承诺:

then