如何在Angular 2中取消HTTPRequest?

我只知道如何拒绝promise 的请求.

return new Promise((resolve, reject) => {
    this.currentLoading.set(url, {resolve, reject});

    this.http.get(url, {headers: reqHeaders})
        .subscribe(
            (res) => {
                res = res.json();

                this.currentLoading.delete(url);
                this.cache.set(url, res);

                resolve(res);
            }
        );
});

推荐答案

你可以打unsubscribe

let sub = this.http.get(url, {headers: reqHeaders})
            .subscribe(
                (res) => {
                    res = res.json();

                    this.currentLoading.delete(url);
                    this.cache.set(url, res);

                    resolve(res);
                }
            );

sub.unsubscribe();

更多信息请点击这里:http://www.syntaxsuccess.com/viewarticle/angular-2.0-and-http

Angular相关问答推荐

Angular前端调用ALB身份验证后的后端并重定向

当try 使用Angular和PrimeNg手动聚焦输入时,我做错了什么?

将Angular 17中的http服务与独立组件一起使用

Angular 服务错误处理响应类型=BLOB

有没有其他代码可以用函数的方式写成Angular ?

RxJS轮询+使用退避策略重试

react 形式之间的循环关系

Angular 单位测试表

Angular 15 在 URL 中使用@进行路由

Angular 不使用NgRx的简单CRUD应用程序

Angular 15:在范围内提供相同标记时附加到提供的值

将 html ngModel 值传递给服务Angular

为什么 Angular2 (click) 事件没有在

如何重新加载当前页面?

Angularmaterial步进器:禁用标题导航

移除 Angular 组件创建的宿主 HTML 元素 Select 器

将 Angular 5 升级到 6 时,我得到不兼容的对等依赖(使用 ng update @angular/core)

如何在悬停时向元素添加类?

Mat-autocomplete - 如何访问选定的选项?

Angular 中 polyfills.ts 文件有什么用