在node.js中解决承诺之前,then()回调触发

使用node.js版本7.7.2,我要执行一个异步函数,然后在第一个函数完成后执行另一个函数,如下所示:

function foo() {

return new Promise(function(resolve, reject) {

// Do some async stuff

console.log('foo is about to resolve');

resolve();

});

}

function bar(arg) {

console.log(arg);

}

foo().then(bar('bar has fired'));

问题是此安装程序打印“栏已被开除”,然后打印“foo将要解决”。我期望的是,bar将等待触发,直到foo返回的promise被解决为止。我是否误解了then()如何将回调在node.js事件循环中排队?

谢谢

回答:

如注释中所述,将一个函数传递给该函数then,当该函数被调用时,将bar使用您的params进行调用。

function foo() {

return new Promise(function(resolve, reject) {

// Do some async stuff

console.log('foo is about to resolve');

resolve();

});

}

function bar(arg) {

console.log(arg);

}

foo().then(function(){bar('bar has fired')});

以上是 在node.js中解决承诺之前,then()回调触发 的全部内容, 来源链接: utcz.com/qa/423950.html

回到顶部