所以我必须创建一个函数:
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调用它。