等待 Promise 链:潜在的陷阱
建议不要在某些上下文中等待 Promise 链,特别是在 Angular 6 应用程序中。这种看似多余的方法引发了对其潜在后果的质疑。
Promise 链问题
以下代码片段举例说明了所讨论的反模式:
await someFunction().then(result => { console.log(result); });
此代码不必要地将 someFunction() 返回的 Promise 包装在 Promise.then 链中
替代解决方案
更简洁直接的方法是直接等待承诺:
const result = await someFunction(); console.log(result);
为什么要避免 Promise Chaining?
虽然两个片段实现了相同的效果结果,第一个会引起混乱和潜在的错误:
一致性是关键
为了保持一致性并避免潜在的风险陷阱,建议选择直接等待承诺的更简单方法。这符合在异步函数中优先使用await的一般规则。
规则的例外
虽然await通常更可取,但也可能有例外。在某些错误处理情况下,承诺链可以提供更清晰、更简洁的方法。
以上是你应该等待承诺链吗?的详细内容。更多信息请关注PHP中文网其他相关文章!