У меня есть следующие методы:
this.skickPlayerService.loadSkick().then(
(skick) => {
var skickBlob = skick as Blob;
},
(error) => {}
);
Вызов метода asyn c выглядит следующим образом:
async loadSkick(): Promise<any> {
try {
return await this.graphClient
.api('/me/drive/items/25647924903216B8%21227697')
.get(async (err, res) => {
if (err) {
return;
}
return await fetch(res['@microsoft.graph.downloadUrl']).then(
async function (response) {
return await response.blob(); // I need the call to wait until this is executed
}
);
});
} catch (error) {}
}
Проблема в том, что loadSkick () возвращается, когда. выполняется, но значение все еще равно нулю, потому что следующий внутренний вызов "return await response.blob ();" еще не был выполнен.
Мне нужно вернуться к вызывающему только после того, как будет получен результат return await response.blob (); выполняется