相关疑难解决方法(0)

如何在.then()链中访问先前的promise结果?

我已经将我的代码重组为承诺,并构建了一个由多个回调组成的精彩长扁平承诺链.then().最后我想返回一些复合值,并且需要访问多个中间承诺结果.但是,序列中间的分辨率值不在最后一个回调的范围内,我该如何访问它们?

function getExample() {
    return promiseA(…).then(function(resultA) {
        // Some processing
        return promiseB(…);
    }).then(function(resultB) {
        // More processing
        return // How do I gain access to resultA here?
    });
}
Run Code Online (Sandbox Code Playgroud)

javascript scope promise bluebird es6-promise

607
推荐指数
10
解决办法
18万
查看次数

承诺可以在onFulfilled上有多个参数吗?

我在这里遵循规范,我不确定它是否允许使用多个参数调用onFulfilled.例如:

promise = new Promise(function(onFulfilled, onRejected){
    onFulfilled('arg1', 'arg2');
})
Run Code Online (Sandbox Code Playgroud)

这样我的代码:

promise.then(function(arg1, arg2){
    // ....
});
Run Code Online (Sandbox Code Playgroud)

会收到arg1arg2

我不关心任何具体的承诺如何实现它,我希望密切关注w3c规范的承诺.

javascript promise

122
推荐指数
3
解决办法
10万
查看次数

标签 统计

javascript ×2

promise ×2

bluebird ×1

es6-promise ×1

scope ×1