javascript - Hämta ett värde från ett Promise i Typescript
En av funktionerna inom en TypeScript-klass returnerar en Promise<string>. Hur avpaketerar/returnerar jag värdet inuti det löftet.
functionA(): Promise<string> {
// api call returns Promise<string>
}
functionB(): string {
return this.functionA() // how to unwrap the value inside this promise
}
Svar #1
Hur avpaketerar/jusar jag värdet inuti det där löftet
Du kan göra det med async/await. Låt dig inte luras att tro att du bara gick från async till sync, async await är bara ett omslag runt .then.
functionA(): Promise<string> {
// api call returns Promise<string>
}
async functionB(): Promise<string> {
const value = await this.functionA() // how to unwrap the value inside this promise
return value;
}
Vidare
- TypeScript Deep Dive-dokumentation
Svar #2
Prova detta
functionB(): string {
return this.functionA().then(value => ... );
}
