TypeScriptクラス内の関数の1つがPromise<string>
を返します。どうすればその約束の中で価値を解き放つことができますか。
functionA(): Promise<string> {
// api call returns Promise<string>
}
functionB(): string {
return this.functionA() // how to unwrap the value inside this promise
}
どうすればその約束の中で価値を解き放つことができますか
async
/await
でそれを行うことができます: https://basarat.gitbooks.io/TypeScript/content/docs/async-await.html
単に非同期から同期に移行したと誤解しないでください。これは.then
のラッパーにすぎません: https://basarat.gitbooks.io/TypeScript/content/docs/async- await.html#generated-JavaScript
これを試して
functionB(): string {
return this.functionA().then(value => ... );
}