如何访问链式承诺之间的参数

时间:2017-03-31 15:07:39

标签: javascript asynchronous promise

我有以下代码:

vm.testService.getUser(id, name)
.then((resultA) => {
    return vm.testService.getUserInfo(id, name);
})
.then(() => {
    // will process resultA from first .then
});

我需要在第二个访问resultA。然后。 提前谢谢。

2 个答案:

答案 0 :(得分:0)

一种方法是将第一个响应分配给变量,然后在第二个中访问该变量

检查代码段



let response

vm.testService.getUser(id, name)
  .then((resultA) => {
    response = resultA
    return vm.testService.getUserInfo(id, name);
  })
  .then(() => {
    console.log(response)
    // will process resultA from first .then
  });




答案 1 :(得分:0)

您可以将第一个回调的结果存储在外部范围

let result;
vm.testService.getUser(id, name)
.then((resultA) => {
    result = resultA;
    return vm.testService.getUserInfo(id, name);
})
.then(() => {
    // 'result' will now equal resultA
});