Angular:如何使用拦截器显示图形组件?

问题描述 投票:-1回答:1

我正在使用Angular 6开发一个Web应用程序。我创建了一个拦截器服务(使用接口HttpInterceptor),它拦截了某些类型的HTTP调用。该类工作正常(我可以拦截我想要的所有HTTP调用)。在这个应用程序中有几个图形组件。使用拦截器中编写的代码显示图形组件(例如微调器或模态窗口)的方法是什么?

一个例子:

@Injectable()
export class MyHttpInterceptor implements HttpInterceptor {

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

        let updateReq;

        updateReq = req.clone({
            setParams: {
                responseType: 'no-type'
            }
        }
        );

        console.log(updateReq);

        return next.handle(updateReq).pipe(tap(
            event => console.log(event),
            err => console.log(err)
        ));
    }

}

例如,我想测试req是否有一些属性,然后我出现一个图形组件。我在整个申请过程中如何做到这一点?谢谢您的帮助。

angular typescript components angular-http-interceptors
1个回答
0
投票
  1. 使用显示/隐藏微调器的标志创建一个微调器组件
  2. 创建一个新的服务“spinnerservice”,如果切换微调器,则切换标志并发出事件。
  3. 在你的微调器组件和你的截取器中注入你的服务
  4. 从拦截器调用“spinnerservice”
  5. 在spinnercomponent中监听您服务的事件并调整您的微调器状态。
© www.soinside.com 2019 - 2024. All rights reserved.