【发布时间】:2019-09-04 20:36:41
【问题描述】:
我运行一个内部 Angular 项目,我想向该项目引入“取消请求”按钮。我们有一个带有一堆参数的搜索功能,但这些请求最多可能需要两位数的秒数(10 秒及以上)。通常,当有人在搜索字段中输入过于明确的内容时会发生这种情况,因为我们进行了 LIKE/contains 搜索。
我希望能够取消这些请求,因此我的代码在返回到组件时不会执行。这样,我可以快速取消请求并发送新请求。
现在我将按钮设置为禁用,因此用户无法轻松发送新请求。如果我不这样做,就会出现以下问题:
- 发送请求_1
- 发送请求_2
- request_2 在 3 秒内完成并在页面上显示结果
- request_1 在 10 秒内完成并替换页面上的结果
显然这不是最优的。
可使用的代码(单击Get stuff 按钮并出现取消按钮):https://stackblitz.com/edit/angular-cgmyvc
【问题讨论】:
标签: angular angular-httpclient angular8