首页 >web前端 >js教程 >为什么 Angular 不鼓励在 Promise 链内等待?

为什么 Angular 不鼓励在 Promise 链内等待?

Linda Hamilton
Linda Hamilton原创
2024-11-29 09:18:11350浏览

Why Is Awaiting Within Promise Chains Discouraged in Angular?

在 Promise 链中等待:深入研究陷阱

在 Angular 6 中,您可能遇到过不鼓励使用以下模式的想法:

await someFunction().then(result => {
    console.log(result);
});

最初,这可能看起来令人费解,因为它本质上执行相同的任务如:

const result = await someFunction();
console.log(result);

后者通常被认为更简洁和更受欢迎,但问题出现了:为什么等待承诺链可能会出现问题?

了解危险

虽然上述代码片段可能看起来相同,但存在一些细微的差异,可能会带来风险:

1.混合风格:
结合同步(await)和异步(then)方法可能会导致混乱和混淆。这可能会导致代码不一致并可能出现错误。

2.复杂的控制流:
随着代码变得更加复杂,在 then 回调中添加另一个 Promise 调用可能会引入一系列新场景。目前尚不清楚是否可以在回调中使用await,如何处理条件返回,或者是否可以从外部函数返回。这些不确定性可能会导致意外的行为和代码缺陷。

拥抱一致性

为了增强可读性、可维护性并防止错误,建议避免将 Promise 链与 wait 混合。采用一致的方法,在整个异步函数中使用 wait。

通过遵守此准则,您可以确保清晰度、最大程度地减少混乱并提高代码库的整体质量。

以上是为什么 Angular 不鼓励在 Promise 链内等待?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn