Angular 5 - 停止发送多个请求

时间:2018-01-11 11:33:58

标签: angular interceptor

当用户在表单提交按钮上多次单击时,我需要停止发送多个请求。因此,用户无法发送下一个请求,直到第一个响应正在接收。同时他可以看到微调器动画而不是这个按钮。收到回复后,他可以再次点击并提交。

不确定如何开始。按钮有自己的组件,我想在一个地方修改代码。不确定我是否需要使用拦截器,指令或什么?你觉得怎么样?

2 个答案:

答案 0 :(得分:2)

在组件的类中创建一个布尔变量isBusy并在onSubmit()方法中将其设置为true。当结果(或错误)返回时,将其设置为false。

isBusy var绑定到“提交”按钮的disabled属性:

<button type="submit" [disabled]="isBusy">Submit</button>

答案 1 :(得分:0)

您可以使用下面提到的包来管理http请求中的加载程序。

https://www.npmjs.com/package/angular2-busy

希望这有帮助