use*_*823 1 http typescript angular2-services angular
如果花费太长时间,我想忽略我的API的响应.我用
this.http.get(mysqlUrl).subscribe()
Run Code Online (Sandbox Code Playgroud)
得到回应.但是如果完成时间超过5秒,我想取消订阅.我知道我可以使用unsubscribe(),但是如何将其链接到超时值?
谢谢!
平原setTimeout应该工作:
let subscription = this.http.get(mysqlUrl).subscribe(...);
setTimeout(() => subscription.unsubscribe(), 5000);
Run Code Online (Sandbox Code Playgroud)
你可以使用takeUntil运算符:
this.http.get(mysqlUrl)
.takeUntil(Observable.of(true).delay(5000))
.subscribe(...)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6402 次 |
| 最近记录: |