在Angular中,可以使用async
和await
关键字来从一个Promise中获取值。下面是一个示例:
async getValueFromPromise() {
try {
const result = await this.myPromiseFunction(); // 调用返回Promise的函数
console.log(result); // 打印Promise的结果
} catch (error) {
console.error(error); // 处理错误
}
}
myPromiseFunction(): Promise {
return new Promise((resolve, reject) => {
// 异步操作
// resolve(value) 或 reject(error)
});
}
在上面的示例中,getValueFromPromise
函数使用async
关键字来声明为异步函数。在函数内部,我们使用await
关键字来等待myPromiseFunction
的返回结果。当Promise解析(resolve)时,结果将被存储在result
变量中,并可以进一步处理。如果Promise被拒绝(reject),则错误将被捕获并在catch
块中处理。
请注意,await
关键字只能在async
函数中使用。如果在非async
函数中使用,将会报错。