返回promise并解析其中的多个await



所以我必须创建一个函数:

const someData = await this.someservice.generateData();

现在,在generateData()中:

generateData(){
try{
const d1= await this.someServerCall();
const d2 = await this.someServerCall2();

// resolve promise with this data
return { 
obj1: d1,
obj2: d2
}
} catch(e){
// reject Promise
}
}

我无法理解如何在里面包装它:

return new Promise(function (resolveFunc, rejectFunc) {
resolveFunc(some_data)
rejectFunc(error);
}

这样我就可以通过调用await this.someservice.generateData();来获取数据当我把serverCalls放在Promise内时,我得到Untyped function calls may not accept type arguments.t

您只需要将generateData声明为异步函数。

async generateData(){
try{
const d1= await this.someServerCall();
const d2 = await this.someServerCall2();

// resolve promise with this data
return { 
obj1: d1,
obj2: d2
}
} catch(e){
// reject Promise
}

在你之后,你可以自由地用await调用它。

最新更新