【发布时间】:2022-01-07 21:53:48
【问题描述】:
您好,我无法找到级联函数问题的解决方案,
服务 A
print(await serviceB.methodA(myParameter));
服务 B
async methodA(MyParameter){
return await methodB(MyParamter).then((value) =>{
serviceA.methodC(value);
}
);
}
所以输出是
undefined
result
我怎么能等到第二个结果呢??因为当变得未定义时会破坏我的服务A
【问题讨论】:
-
您在第一次
then回调中没有返回承诺。在serviceA.methodC(......之前添加return -
你应该在回调中返回
Promise:return serviceA.methodC -
您不应该将
await与承诺链foo().then().then()混合使用,选择一种您更喜欢的方法并坚持下去... -
@trincot 我编辑了这个问题,因为经过几个小时的尝试解决它我做的一团糟,这是我首先尝试的方式,所以问题是如何避免第一个结果。
-
return仍然不见了...
标签: javascript node.js asynchronous async-await