javascript - 如何从本身使用 Promise 的函数返回 Promise?

标签 javascript node.js promise

我想做的基本上是

function test() {
getSomeValue().then(function (data) {
    //process data
});
}

function getSomeValue() {
//do some long process 
return new Promise(function (resolve, reject) {
    resolve(result);
});
}

function getSomeOtherValue() {
//do some long process 
return new Promise(function (resolve, reject) {
    resolve(result);
});
}

函数测试调用一个返回 Promise 的函数,然后对返回的数据执行一些计算。这部分工作正常。现在函数 getSomeValue 需要调用另一个也返回 Promise 的函数。如何从 getSomeValue 返回一个 promise ,该 promise 也等待 getSomeOtherValue 完成。

如果需要任何其他信息,请告诉我。

最佳答案

要在 getSomeValue 之前从 getSomeOtherValue 获取值,只需先调用 getSomeOtherValue 函数,然后与另一个函数链接来处理 getSomeValue 的值,最后将结果返回给调用者(测试函数)

function getSomeValue() {
  //do some long process 
  return getSomeOtherValue().then(function(resultFromSomeOtherValue) {
    return new Promise(function (resolve, reject) {
      var result = true; //some value after process;
      return resolve(result);
    });
  });
}

关于javascript - 如何从本身使用 Promise 的函数返回 Promise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39767772/

相关文章:

javascript - 在 jquery 中从 ajax 请求分配一个值

javascript - 定义多个布局 emberjs

node.js - 需要 res.json() 到两个单独的端点,抛出 header 错误(node/express)

javascript - Promise.race 中被拒绝的 promise 会发生什么?

javascript - jQuery promise (可变数量的 promise )

node.js - 如何将异步调用转换为 bluebird promise :

javascript - 显示来自网站 URL (json) 的图像以在本地主机中本地显示

javascript - NodeJS SyntaxError : Unexpected token . 我该如何修复?

node.js - Node Google OAuth2 redirect_uri_mismatch

javascript - 循环内的异步函数