【问题标题】:Angular HttpIntercept issues after npm linknpm 链接后的 Angular HttpIntercept 问题
【发布时间】:2020-12-11 14:11:10
【问题描述】:

我有一个包含类 HttpInterceptor 的库。使用npm link 执行该过程后,从这个库到我的项目,整个请求传入event instanceof HttpResponsereturns false。当我运行console.log (event) 时,它返回一个 HttpResponse 类型的对象。

@Injectable()
export class LoadingHttpInterceptor implements HttpInterceptor {

    intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

        LoadingService.show();
        return next.handle(req).pipe(
            tap( (event: HttpEvent<any>) => {
                if (event instanceof HttpResponse){
                    LoadingService.hide();      
                }                
            }),
            catchError(error => {
                LoadingService.hide();
                return throwError(event);
            })
        );
    }
}

【问题讨论】:

    标签: angular npm rxjs httprequest httpresponse


    【解决方案1】:

    不要使用npm link,而是直接将lib 的输出文件夹复制粘贴到项目的node_modules 中。这样做将为HttpResponse 检查返回true

    event instanceof HttpResponse 
    // returns true
    

    【讨论】:

      猜你喜欢
      • 2013-04-27
      • 2018-06-16
      • 2020-07-09
      • 2018-03-13
      • 1970-01-01
      • 2017-12-17
      • 1970-01-01
      • 2019-06-20
      • 1970-01-01
      相关资源
      最近更新 更多