为什么在Angular> = 2中没有同步调用

时间:2018-04-27 13:43:24

标签: angular synchronous

如果我想确保HTTP调用是同步的,因为在检索数据之前,不能进行其他操作,该怎么办?

为什么没有在Angular 2或更高版本中编写同步调用的选项?

1 个答案:

答案 0 :(得分:4)

因为这是一种反模式。

Http-Calls可能总是失败(因为任何通过网络的东西 - 这是你作为程序员无法实现的),如果它们失败,整个应用程序都会失败,不会给用户带来任何后退或至少是视觉通知是错的。

即使他们没有失败,他们也可能需要很长时间才能使您的申请不会被冻结,因此用户不会将其关闭或将手机靠在墙上。

如果你真的想让事情同步,你可以使用几个RXJS运算符;见:

How can I make one RxJS Observable sequence wait for another to complete before emitting?